在Javaweb开发中乱码问题是经常遇到的,产生乱码的原因在于编码于解码的码表不一致造成的.
只要保持编码与解码一致即可.
解决方法又分不同的类型: 1.服务器向客户端传值 2.客户端向服务器传值
服务器-->客户端
字符流乱码:
//解决字符流乱码问题
response.setContentType("text/html;charset=utf-8");
//向页面输出字符流
response.getWriter().write("皮皮虾,我们走");
//字节流乱码:
response.setContentType("text/html;charset=utf-8");
String msg="皮皮虾,我们走";
response.getOutputStream().write(msg.getBytes("utf-8"));
客户端-->服务器
post请求乱码:
// 乱码处理 post请求
request.setCharacterEncoding("utf-8");
String username = request.getParameter("username");
String password = request.getParameter("password");
System.out.println("username:" + username + " passwored:" + password);
get请求乱码:
String username = request.getParameter("username");
username=new String(username.getBytes("iso-8859-1"),"utf-8");