jsp页面编码

来源:互联网 发布:阳春网络问政平台官网 编辑:程序博客网 时间:2024/05/18 00:03
/**
规律:
可行:utf-8编码--->gbk解码-->gbk编码-->utf解码
可行:utf-8编码--->iso8859-1解码-->iso8859-1编码-->utf解码
可行:gbk编码--->iso8859-1解码-->iso8859-1编码-->gbk解码

在JSP页面获取表单的值时会出现乱码,有两种解决方法:
一种是在调用getParameter之前通过request.setCharacterEncoding设置字符编码,
另一种是调用new String(str.getBytes("iso8859-1"), "UTF-8")编码后解码
*/

String s = "你好";  
// 编码----------------------------------------
byte[] utf = s.getBytes("utf-8");  
byte[] gbk = s.getBytes("gbk");  

System.out.println("---------------------");
System.out.println("gbk码用utf解码再编码:" + new String((new String(gbk, "utf-8").getBytes("utf-8")),"gbk")); 
System.out.println("gbk码用iso8859-1解码再编码:" + new String((new String(gbk, "iso8859-1").getBytes("iso8859-1")),"gbk")); 
System.out.println("utf码用gbk解码再编码:" + new String((new String(utf ,"gbk").getBytes("gbk")),"utf-8")); 
System.out.println("utf码用iso8859-1解码再编码:" + new String((new String(utf, "iso8859-1").getBytes("iso8859-1")),"utf-8")); 

System.out.println("---------------------");
System.out.println("iso8859-1编码utf解码:" + new String(s.getBytes("iso8859-1"),"utf-8"));

System.out.println("iso8859-1编码gbk解码:" + new String(s.getBytes("iso8859-1"),"gbk"));


输出结果:

---------------------
gbk码用utf解码再编码:锟斤拷锟�
gbk码用iso8859-1解码再编码:你好
utf码用gbk解码再编码:你好
utf码用iso8859-1解码再编码:你好
---------------------
iso8859-1编码utf解码:??
iso8859-1编码gbk解码:??

0 0
原创粉丝点击