java 编程 乱码问题总结

如果你知道乱码原来的编码吗,就先把它转化回去如:
byte[] b=str.getBytes("ISO-8859-1");
一般的默认是ISO-8859-1形式的编码

一般以POst方法提交的表单数据中有中文字符
获取之前:request.setCharacterEncoding("GBK");
发送中文数据之前:response.setContentType("text/html;charset=GBK");
对于JSP页面,获取请求参数之前:
<%request.setCharacterEncoding("GB2312")%>
<%@page contentType="text/html;charset=GBK"%>


还有就是
String name=request.getParameter("name");
得到的是乱码
name=new String(name.getBytes("ISO-8859-1"),"GBK")
在这的第一行name的Unicode值是以ISO-8859-1编码转化过来的,调用第二行是将得到原始的GBK编码值,用new String重新构造字符串的Unicode编码

你可能感兴趣的:(java,编程,jsp,String,byte)