作者:zergman
email: zergman@chinaasp
日期:2001-6-15 13:22:02
[BLOCKQUOTE][BLOCKQUOTE][BLOCKQUOTE]
[b]Java 编程技术中汉字问题的分析及解决[/b]
[b][/b][/BLOCKQUOTE][/BLOCKQUOTE][/BLOCKQUOTE]
段明辉
自由撰稿人
2000 年 11月 8日
[TABLE][TR][TD][#ffffff][B]内容:[/B][/#][/TD][/TR][TR][TD][img]cn.ibm/developerWorks/i/c.gif[/img][/TD][/TR][TR][TD][img]cn.ibm/developerWorks/i/c.gif[/img][/TD][/TR][TR][TD] [url href=cn.ibm/developerWorks/java/java_chinese/index.shtml#1]汉字编码的常识[/url][/TD][/TR][TR][TD] [url href=cn.ibm/developerWorks/java/java_chinese/index.shtml#2]Java 中文问题的初步认识[/url][/TD][/TR][TR][TD] [url href=cn.ibm/developerWorks/java/java_chinese/index.shtml#3]Java 中文问题的表层分析及处理[/url][/TD][/TR][TR][TD] [url href=cn.ibm/developerWorks/java/java_chinese/index.shtml#4]Java 中文问题的根源分析及解决[/url][/TD][/TR][TR][TD] [url href=cn.ibm/developerWorks/java/java_chinese/index.shtml#5]Java Servlet 中文问题的根源[/url][/TD][/TR][TR][TD] [url href=cn.ibm/developerWorks/java/java_chinese/index.shtml#6]修改 Servlet.jar[/url][/TD][/TR][TR][TD] [url href=cn.ibm/developerWorks/java/java_chinese/index.shtml#7]中文乱码的处理函数[/url][/TD][/TR][TR][TD] [url href=cn.ibm/developerWorks/java/java_chinese/index.shtml#resources]参考资料[/url][/TD][/TR][TR][TD] [url href=cn.ibm/developerWorks/java/java_chinese/index.shtml#author]作者简介[/url][/TD][/TR][TR][TD][img]cn.ibm/developerWorks/i/c.gif[/img][/TD][/TR][/TABLE]
在基于 Java 语言的编程中,我们经常碰到汉字的处理及显示的问题。一大堆看不懂的乱码肯定不是我们愿意看到的显示效果,怎样才能够让那些汉字正确显示呢?Java 语言默认的编码方式是UNICODE ,而我们中国人通常使用的文件和数据库都是基于 GB2312 或者 BIG5 等方式编码的,怎样才能够恰当地选择汉字编码方式并正确地处理汉字的编码呢?本文将从汉字编码的常识入手,结合 Java 编程实例,分析以上两个问题并提出解决它们的
方案。
现在 Java 编程语言已经广泛应用于互联网世界,早在 Sun 公司开发 Java 语言的时候,就已经考虑到对非英文字符的支持了。Sun 公司公布的 Java 运行环境(JRE)本身就分英文版和国际版,但只有国际版才支持非英文字符。不过在 Java 编程语言的应用中,对中文字符的支持并非如同 Java Soft 的标准规范中所宣称的那样完美,因为中文字符集不只一个,而且不同的操作系统对中文字符的支持也不尽相同,所以会有许多和汉字编码处理有关的问题在我们进行应用开发中困扰着我们。有很多关于这些问题的解答,但都比较
琐碎,并不能够满足大家迫切解决问题的愿望,关于 Java 中文问题的系统研究并不多,本文从汉字编码常识出发,分析 Java 中文
问题,希望对大家解决这个问题有所帮助。
[B]汉字编码的常识[/B]
我们知道,英文字符一般是以一个字节来表示的,最常用的编码方法是 ASCII 。但一个字节最多只能区分256个字符,而汉字成千上万,所以现在都以双字节来表示汉字,为了能够与英文字符分开,每个字节的最高位一定为1,这样双字节最多可以表示64K格字符。我们经常碰到的编码方式有 GB2312、BIG5、UNICODE 等。关于具体编码方式的详细资料,有兴趣的读者可以查阅相关资料。我肤一下和我们关系密切的 GB2312 和 UNICODE。GB2312 码,中华人民共和国国家标准汉字信息交换用编码,是一个由中华人民共和国国家标准总局发布