Java编程技术中汉字问题的分析和解决.pdfVIP

Java编程技术中汉字问题的分析和解决.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java 编程技术中汉字问题的分析及解决 段明辉 自由撰稿人 2000 年 11 月 8 日 在基于 Java 语言的编程中 我们经常碰到汉字的处理及显示的问题 一大堆看不懂的乱码肯定不 是我们愿意看到的显示效果 怎样才能够让那些汉字正确显示呢 Java 语言默认的编码方式是 UNICODE 而我们中国人通常使用的文件和数据库都是基于 GB2312 或者 BIG5 等方式编码的 怎样 才能够恰当地选择汉字编码方式并正确地处理汉字的编码呢 本文将从汉字编码的常识入手 结合 Java 编程实例 分析以上两个问题并提出解决它们的方案 现在 Java 编程语言已经广泛应用于互联网世界 早在 Sun 公司开发 Java 语言的时候 就已经考 虑到对非英文字符的支持了 Sun 公司公布的 Java 运行环境 JRE 本身就分英文版和国际版 但只有 国际版才支持非英文字符 不过在 Java 编程语言的应用中 对中文字符的支持并非如同 Java Soft 的标 准规范中所宣称的那样完美 因为中文字符集不只一个 而且不同的操作系统对中文字符的支持也不尽 相同 所以会有许多和汉字编码处理有关的问题在我们进行应用开发中困扰着我们 有很多关于这些问 题的解答 但都比较琐碎 并不能够满足大家迫切解决问题的愿望 关于 Java 中文问题的系统研究并不 多 本文从汉字编码常识出发 分析 Java 中文问题 希望对大家解决这个问题有所帮助 汉字编码的常识 我们知道 英文字符一般是以一个字节来表示的 最常用的编码方法是 ASCII 但一个字节最多 只能区分 256 个字符 而汉字成千上万 所以现在都以双字节来表示汉字 为了能够与英文字符分开 每个字节的最高位一定为 1 这样双字节最多可以表示 64K 格字符 我们经常碰到的编码方式有 GB2312 BIG5 UNICODE 等 关于具体编码方式的详细资料 有兴趣的读者可以查阅相关资料 我肤浅谈一下 和我们关系密切的 GB2312 和 UNICODE GB2312 码 中华人民共和国国家标准汉字信息交换用编码 是一个由中华人民共和国国家标准总局发布的关于简化汉字的编码 通行于中国大陆地区及新加坡 简 称国标码 两个字节中 第一个字节 高字节 的值为区号值加 32 20H 第二个字节 低字节 的值 为位号值加 32 20H 用这两个值来表示一个汉字的编码 UNICODE 码是微软提出的解决多国字符问 题的多字节等长编码 它对英文字符采取前面加 0 字节的策略实现等长兼容 如 A 的 ASCII 码 为 0x41 UNICODE 就为 0x00 0x41 利用特殊的工具各种编码之间可以互相转换 Java 中文问题的初步认识 我们基于 Java 编程语言进行应用开发时 不可避免地要处理中文 Java 编程语言默认的编码方式 是 UNICODE 而我们通常使用的数据库及文件都是基于 GB2312 编码的 我们经常碰到这样的情况 浏览基于 JSP 技术的网站看到的是乱码 文件打开后看到的也是乱码 被 Java 修改过的数据库的内容 在别的场合应用时无法继续正确地提供信息 String sEnglish = “apple”; String sChinese = “苹果”; String s = “苹果 apple ”; sEnglish 的长度是 5 sChinese 的长度是4 而 s 默认的长度是 14

文档评论(0)

kehan123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档