Java中文识别问题完全解决办法[一]

版权归 石太祥 (ealpha(AT)msn(DOT)com)所有;

联系:   msn: ealpha(AT)msn(DOT)com

            QQ : 9690501

 

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

由于部分网友提示说文章解决不是很全面,我会再发一个新的类,用来解决一般的中文的问题的!

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

Java 不能正确显示中文一般是如下两种情况

许多情况应该针对环境变量,调试环境来确定转码方式!以下方法能够解决大多的问题!


1
、如果JDBC能正确存取中文的话.
PAGE 指令中试试contenttype="text/html chaterset=gb2312" 

例:
<%@?page?language="java"??contentType="text/html;?charset=GB2312"?import="java.sql.*" %>


2
JDBC中无法正确存储中文
1 String address=request.getParameter("address"); 
byte[] tmpbyte=address.getBytes("ISO8859_1"); 
address=new String(tmpbyte); 
2
 
String name=request.getParameter("name"); 
name = new String(name.getBytes("gb2312"),"ISO8859_1"); 

"ISO8859_1" "gb2312"可以尝试交换

例:

/**************************************************************************
nickname        
为一个假设的字段
tm nickname      
转码时候临时字段
**************************************************************************/

     String nickname=rs.getString("nickname").trim();   //读出信息  ****
     byte[] tmnickname=nickname.getBytes("ISO8859_1");  //
对信息进行编码转换 tm**** 临时存储数据

nickname=new String(tmnickname);                   //
将转换后的 tm**** 赋给字段 ****

你可能感兴趣的:(JAVA)