文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | firefox | WPS | 杀毒软件 | Picasa
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形图像 办公软件 媒体动画 精文荟萃 常用软件 网页编程 技术开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院网络编程JSPjsp中文问题解决方案(完整版)
精品推荐
特别推荐
·新手入门:学习JSP的经典的入门学习资料
·由浅入深学习动态网页制作PHP的编程与应用
·输入汉字自动转为拼音(jsp实现方式)
·经验分享 JSP程序员完全蜕变手册
·JSP实战:JBuilder2005中创建数据库表
·新手入门:JSP基本语法与简单表单处理
·使用技巧:在JSP页面中的应用JavaBean
·实例:JSP中把动态页面转换为静态页面
·使JSP/Servlet应用程序优化的八种方法
·提升JSP页面响应速度的七大秘籍绝招
·jsp中文问题解决方案(完整版)
·jsp的八个隐含对象
·用jsp实现SQLServe数据库的备份和恢复
·深入浅析JSP安全编程实例
·jsp防盗链
·js技巧收集(200多个)
·JSP应用语法详解大全 (3)
·实例讲解:全程追踪入侵JSP网站服务器
·Apache服务器之JSP概述篇
·新手入门经典:Jsp环境配置
热点TOP10
·js技巧收集(200多个)
·jspSmartUpload上传下载全攻略
·jspSmartUpload上传组件
·初学入门:详细学习掌握JSP的语法知识
·Jsp开发环境配置全过程
·新手入门:学习JSP的经典的入门学习资料
·JSP语法简表
·不用迭代算法而快速实现的jsp树结构
·JSP开发工具的选择
·JSP学习经验总结
·在一个jsp页面实现二级下拉框联动
·从入门到精通 JSP全系列教程
·基于JSP实现数据库图片的存储和显示
·在jsp中用bean和servlet联合实现用户注册、登录
·jsp在线考试系统-jsp文件
·用JSP+JavaScript打造二级级联下拉菜单
·JSP编程进度条设计实例
·JSP内建对象
·自己写的一个JSP上传文件和下载文件的JavaBean
·用定制标签库和配置文件实现对JSP页面元素的访问控制

jsp中文问题解决方案(完整版)

日期:2007年6月4日 作者: 查看:[大字体 中字体 小字体]


开发Java应用出现乱码是很常见的,毕竟现在unicode的使用还不是很广泛,在使用gb2312(包含了gbk简体,big5繁体)的系统中要正确实现

中文的display和数据库的存储是最基本的要求。

==============================
1,首先developer要明确自己为什么会遇到乱码,遇到什么样的乱码(无意义的符号还是一串问号或者其它什么东西)。
新手遇到一堆很乱的字符时通常不知所措,最直接的反映就是打开Google搜索”java中文”(这个字符串在搜索引擎上的查询频率非常高),

然后一个一个的去看别人的解决方法。这样做没有错,但是很难达到目的,原因下面会提到。
总之,出现乱码的原因是非常多的,解决的方法也完全不一样,要解决问题必须先分析自己的”上下文环境”。

============================
2,具体说来,需要哪些信息才能确定项目中的乱码的根源。
a,开发者所用的操作系统
b,j2ee容器的名称,版本
c,数据库的名称,版本(精确版本)以及jdbc驱动的版本
d,出现乱码的source code(比如是system out 出来的,还是jsp页面中的,如果是jsp中的,那么头部声明的情况也很重要)

===========================================================
3,如何初步分析乱码出现的原因。
有了上述的信息,基本上就可以发帖求助了,相信放到javaworld等论坛上,很快就会有高手给你提出有效的解决方案的。
当然不能总靠发帖求助,也要试试自行解决问题。如何下手呢?
a,分析一下你的”乱码”到底是什么编码。这个其实不难,比如
System.out.println(testString);
这一段出现了乱码,那么不妨用穷举法猜测一下它的实际编码格式。
System.out.println(new String(testString.getBytes(”ISO-8859-1″),”gb2312″));
System.out.println(new String(testString.getBytes(”UTF8″),”gb2312″));
System.out.println(new String(testString.getBytes(”GB2312″),”gb2312″));
System.out.println(new String(testString.getBytes(”GBK”),”gb2312″));
System.out.println(new String(testString.getBytes(”BIG5″),”gb2312″));
等等,上述代码的意思是用制定的编码格式去读取testString这个”乱码”,并转换成gb2312(此处仅以中文为例)
然后你看哪一个转换出来的结果是ok的,那就。。。

b,如果用上面的步骤能得到正确的中文,说明你的数据肯定是在的,只不过是界面中没有正确显示而已。那么第二步就该纠正你的view部分了

,通常需要检查的是jsp中是否选择了正确的页面编码。

在此要声明被很多人误解的一点,那就是<%@ page contentType=”text/Html; charset=GB2312″ %>指令和<META http-equiv=Content-Type

content=”text/html; charset=gb2312″>两者的不同。通常网上的很多文章在提到中文问题时都是说数据库中选择unicode或者gb2312存储,同

时在jsp中用page指令声明编码就可以解决。但是我觉得这种说法很不负责任,害的我费了N多时间为本来并不存在的乱码而郁闷。实际上page

的作用是在jsp被编译成为html的过程中提供编码方式让java来”读取”表达式当中的String(有点类似于上面的第三个语句的作用),而meta

的作用是众所周知的为IE浏览器提供编码选择,是用来”显示”最后的数据的。但是没有看到有人提醒这一点,我一直把page当成meta在用,

导致本来是iso-8859的数据,被page指令读成gb2312,于是乱码,所以又加了编码转化的函数把所有的string数据都从iso8859转到gb2312(为

什么这么转,当时也没考虑这么多,因为这么做可以正常显示了,所以就这么改了,呵呵当时实在没有时间慢慢排查问题了)。

===============================================================

[1] [2] [3] [4] [5] [6] 下一页 




上一篇:Adobe Photoshop CS3 扩展版新功能

下一篇:数据库开发个人总结(ADO.NET小结)

jsp中文问题解决方案(完整版) 相关文章:
·XP系统运行慢?小编自用7招解决
·解决与HTTP 500 – 内部服务器错误错误信息有关的问题
·不用重装XP系统就可以解决全部故障
·定位决定价位,如何组装自己满意的电脑?
·全面解决Generic host process for win32 services遇到问题需要关闭
·教你轻松解决硬盘异响
·100个女人看了有九十九个女人都动心的决定嫁给他的情书你看了会吗?
·信息安全问题需解决方案
·阅人有术:志向往往决定人一生的顶峰位置
·人一生要解决的50个关键问题
jsp中文问题解决方案(完整版) 相关软件:
·细节决定成败(完整版)
·GBA《游戏王GX学院决斗》模拟器
·决定你一生成就的21个信念mp3
·血型决定你
·解决杀毒软件并存后产生的错误
·Adobe Acrober 5.0电子表单解决方案白皮书
·挑战黑客:网络安全的最终解决方案(PDF)(成为黑客高手必看之书)
·决胜高考英语听力
·无法用QQ语音聊天的解决办法
·计算机关机后重启速度慢解决 视频

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:vipcn