Java编程的中文处理问题分析研究:plc编程入门梯形图

  摘要:本文提出了Java程序设计中遇到的中文问题,阐述分析了Java编程中有关中文信息处理的问题,针对不同具体头问题提出不同解决方法,有效解决了Java编程开发中几种经常遇到的中文问题。
  关键词:JavaUnicode 中文处理 汉字编码 方法
  1、引言
  Java编程语言具有面向对象,可跨平台运行和分布应用等特点,因此使得Java语言成为现代编程语言中最具生命力的计算机语言。在使用Java技术进行程序设计、软件开发中,经常会遇到中文问题,即应该显示中文的时候.却出现莫名其妙的乱码。其主要表现在:中文文本文件的读写内容不一致;Java程序与数据库之间不能处理中文;Web应用中不能处理中文等方面。特别是在读取数据库中的中文信息时,问题特别明显。Java中文处理问题一直困扰着很多初学者,如果了解了Java系统的中文问题原理,我们就可以对中文问题能够采取根本的解决之道.
  2、Java中文问题的由来
  在计算机中一切处理程序最初都是以单字节编码为准进行处理。随后,微软提出了Unicode编码Java语言即采用了此种编码,其内部一律用Unicode来表示字符。Unicode是用两个字节表示一个字符的符编码方案,其兼容英文字符和其它国家的双字节字符编码,而我们中文通常使用的字符编码是一种双字节字符集(DBCS),如:GB2312、GBK、GB此类编码,它与Unicode编码机制有很大的差别。Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问题。也就是说,因为服务器使用的编码方式不同和浏览器对不同的字符显示结果不同而导致的。Java中文信息处理之所以存在问题,其根本原因是由于被操作的中文字符编码格式与目标编码格式不一致所造成。
  3.2 表单提交中文时出现乱码(分get和post两种处理)
  主要是由于浏览器默认使用UTF-8编码方式来发送请求,而UTF- 8和GB2312编码方式表示字符时不一样,这样就出现了不能识别字符。问题出在 QueryString 的解析,以前在 Tomcat 4.x 时代,无论 submit 时采用 GET or POST,Tomcat server 对 parameters 的处理都采用相同的编码,但在 Tomcat 5.x 版,不知何故,却将 QueryString 的解析独立出来,目前确认,Form 的 Method 采用 GET 及直接将参数写在 URL 上的中文,上传到 Tomcat时,无论如何转码,都会变成乱码,那怕你事先作过 URLEncode 也一样。
  4、结语
  从以上几种解决方法我们不难看出,Java中文信息处理之所以存在问题,其根本原因是由于被操作的中文字符编码格式与目标编码格式不一致所造成。有这些问题,其实都是发生在字符的读入、输出过程。因此,只要我们把握住这一环节,就可以更好的发现、分析、处理和预防Java编程中所存在的中文问题。
  参考文献
  [1]朱喜福.Java程序设计(第二版).人民邮电出版社,2011.6.
  [2]李兴华.Java开发实战经典.清华大学出版,2010.8.1.
  [3]卜炟 等编著.21天学通Java Web开发.电子工业出版社,2009.4.1.
  [4]刘其成.Java编程中的中文问题及其解决方法.《计算机系统应用》,2009.6.

推荐访问:分析研究 中文 编程 java