- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java编码中文问题研究及解决方案
计算机系统应用200.5年第11期
Java编码中文问题研究及解决方案
ResearchandResolutiononChineseProblemBasedonJava
冯金辉朱淼良(杭州浙江大学计算机科学与技术学院310027)
摘要:本文首先研究了中文问题产生的根源,然后详细分析了各种编码方式及产生中文问题的原因.接着介绍了
系统的各个层次可能产生问题的表现以及原因.最后提出了解决中文问题的原则以及具体的解决方案.
关键词:编码解码ISO8859UnicodeUTF一8
1引言
现在Java编程语言已经广泛应用于互联网世界,
早在Sun公司开发Java语言的时候,就已经考虑到对
非英文字符的支持了.Sun公司公布的Java运行环
境(JRE)本身就分英文版和国际版,其中国际版支持非
英文字符.然而,因为中文字符集不只一个,而且不同
的操作系统对中文字符的支持也不尽相同,所以会有
许多和汉字编码处理有关的问题在我们进行应用开发
中困扰着我们.有很多关于这些问题的解答,但是很
多都只是针对某种特定开发环境或者特定情况的解决
方法,在实际的应用过程中,需要使用者去一一尝试,
才能够得到正确的解决方案,这就大大降低了使用这
些解决方法的效率.本文将从汉字编码常识出发,分
析Java中文问题,并提出解决问题的原则,使读者能
够明白具体情况下应该如何处理,然后提出一系列的
具体解决方案,希望对大家解决这个问题有所帮助.
2Java的编码方式
Java中的字符数据是16位无符号型数据,它表示
Unicode集,而不仅仅是ASCII集.它解决了WWW上
很多的程序设计问题,比如说低成本的国际化(Inter—
nationa1),然而Java所处理的信息,绝大多数都是英
文,对它们来说7位的ACSII码已经足够了,而Unicode
却需要双倍的空间,所以Java的这种兼顾各种语言的
做法既浪费了存储资源又降低了效率.而Java编程
中中文问题的出现,归根结底是由于在Java的各个不
同的编码方式之间进行字符转换的时候出错.因此,
了解Java使用的各种编码方式,有助于我们解决Java
78实践经验Prac6calExperience
中文问题.在Java中常用的编码方式有1508859—1,
Unicode,GB2312,GBK,UTF一8.
(1).ISO8859—1
ASCII编码方式是单字节内码,它使用了单字节8
位中的后7位,而第一位都为O.为了应付越来越多的
字符需要,如拉丁字母等,于是在AsCII的基础上扩展
了1508859—1编码.1508859—1同样是单字节内码,
当ISO8859—1编码的字节首位为O时,字符可以一一
映射到ASCII编码字符集.而当ISO8859—1编码的字
节首位为1时,则可以增加128个字符.
(2).Unicode
Unicode最初是双字节内码.它的出现是为了让
每一个字符有唯一的表示形式.Unicode编码是
ISO8859—1的扩展.当Unicode编码的高位字节为O
时,低位字节等同于ISO8859—1编码.这
时候,去除Unicode编码的高位字节,其编码就转化为
ISO8859—1编码.这种方式适用于基于ISO8859—1
编码方式的西欧语系环境.
(3).GB2312
GB2312—80是双字节内码,它是在国内计算机汉
字信息技术发展初始阶段制定的,其中包含了大部分
常用的一,二级汉字,和9区的符号.该字符集是几乎
所有的中文系统和国际化的软件都支持的中文字符
集,这也是最基本的中文字符集.其编码范围是高位
0xal一0xfe,低位也是0xal一0xfe;汉字从0xb0al开
始,结束于Oxf7fe.
(4).GBK
GBK也是双字节内码,是GB2312—80的扩展,是
2005年第11期计算机系统应用
向上兼容的.它包含了20902个汉字,其编码范围是
0x8140一Oxfefe,剔除高位0x80的字位.其所有字符
都可以一对一映射到Unicode2.0,也就是说JAVA实
际上提供了对GBK字符集的支持.这是现阶段Win—
dows和其它一些中文操作系统的缺省字符集.
(5).GB18030—2000(GBK2K)
GB1lt;2K是变长内码,它在GBK的基础上进一步扩
展了汉字,增加了藏,蒙等少数民族的字形.GBK2K从
根本上解决了字位不够,字形不足的问题.它也是未
来的中文国家标准.
(6).UTF一8
UTF一8是变长内码,它提供了一种简便而向后兼
容的方法.它的出现是为了提高效率.当操作的文本
基本都是规则的ASCII编码时,使用双字节的Unicode
编码显得效率很低.因此Java字节码内的字符串使
用了UTF
您可能关注的文档
- ICU患者常见感染部位诊治.ppt
- ICU肋骨骨折护理查房.ppt
- ICU医院感染管理质量控制之体现.pptx
- ICU意外脱管病例分享.ppt
- ICU谵妄病人管理新进展.ppt
- IDD分类、特征及治疗.ppt
- IE工程基础培训讲座.ppt
- IE基础知识讲座.ppt
- IE企业管理讲座PPT.ppt
- IGA肾病及肝脏疾病.ppt
- 2024-2030年中国UV固化粉末涂料行业市场发展趋势与前景展望战略分析报告.docx
- 2024-2030年中国PBO短纤市场发展态势与未来营销策略探讨报告.docx
- 2024-2030年中国LED行业发展分析及投资风险预测研究报告.docx
- 2024-2030年中国三异丁基铝行业运作模式监测与未来发展趋势预判报告.docx
- 2024-2030年中国三氟甲磺酸行业供需态势及投资潜力分析研究报告.docx
- 2024-2030年中国三乙醇胺行业应用态势及发展趋势预测报告.docx
- 2024-2030年中国不锈钢丝市场运营风险与销售渠道管理研究研究报告.docx
- 2024-2030年中国亚麻尼龙面料行业市场分析及竞争形势与发展前景预测研究报告.docx
- 2024-2030年一次性活性炭过滤口罩行业市场现状供需分析及投资评估规划分析研究报告.docx
- 2024-2030年中国1,2,3-苯并三唑行业市场发展趋势与前景展望战略分析报告.docx
文档评论(0)