JAVA 字符编码小结
2007-10-15 11:48
232 查看
这一段时间在开发过程中遇到这样一个问题。相同的字符串用http协议访问时正常显示,而采用https协议访问时则出现乱码。采用new String(s_fullname.getBytes("iso-8859-1"),"gb2312")的方式进行转化后,在https下正常显示,但是在http方式下又出现乱码,并且两次出现的乱码不同。解决方式如下:
byte[]temp1,temp2;
temp1 = s_fullname.getBytes("iso-8859-1");
temp2 = s_fullname.getBytes("gb2312");
String compstring1,compstring2;
compstring1 = new String(temp1);
compstring2 = new String(temp2);
String ss_fullname = "";
if(s_fullname.equals(compstring2)){
ss_fullname = String.valueOf(s_fullname);
}else{
ss_fullname = new String(s_fullname.getBytes("iso-8859-1"),"gb2312");
}
网上找到的一些小知识:
String str="英";
//取得GB2312编码的字节
byte[] bytesGB2312=str.getBytes(GB2312");
//取得平台确省编码的字节(solaris为ISO8859-1,windows为GB2312)
byte[] bytesDefault=str.getBytes();
//用指定的编码将字节转换成字符串
String newStrGB=new String(byteDefault);
//用指定的编码从字节流里面读取字符
InputStream in=xxx;
InputStreamReader reader=InputStreamReader(in,"GB2312");
char aChar=reader.read();
byte[]temp1,temp2;
temp1 = s_fullname.getBytes("iso-8859-1");
temp2 = s_fullname.getBytes("gb2312");
String compstring1,compstring2;
compstring1 = new String(temp1);
compstring2 = new String(temp2);
String ss_fullname = "";
if(s_fullname.equals(compstring2)){
ss_fullname = String.valueOf(s_fullname);
}else{
ss_fullname = new String(s_fullname.getBytes("iso-8859-1"),"gb2312");
}
网上找到的一些小知识:
String str="英";
//取得GB2312编码的字节
byte[] bytesGB2312=str.getBytes(GB2312");
//取得平台确省编码的字节(solaris为ISO8859-1,windows为GB2312)
byte[] bytesDefault=str.getBytes();
//用指定的编码将字节转换成字符串
String newStrGB=new String(byteDefault);
//用指定的编码从字节流里面读取字符
InputStream in=xxx;
InputStreamReader reader=InputStreamReader(in,"GB2312");
char aChar=reader.read();
相关文章推荐
- JAVA 字符编码小结
- java中的I/O流小结
- java语法小结5
- java网络编程小结1
- 分享40个Java多线程问题小结
- Java String.split()用法小结
- Java中static、final用法小结
- 关于近期学习java se篇的小结及一些学习路线的思考
- Java之RandomAccessFile小结
- 正则表达式中需要转义的特殊字符小结-java
- OKHttp用法小结,response的巨坑,java.lang.IllegalStateException: closed
- Java 集合小结
- 有关Java常见的误解小结(来看一看)
- Java 连接数据库及字符编码
- JAVA里字符编码的探索与理解
- Java---String类的方法小结
- Java中split的用法小结
- Java IO小结
- 字符编码与java中文乱码解决办法
- Java Math.round()函数小结