编码问题

get请求中文乱码:

	$.get("testServlet",{username:"你好"},function () {  
	})

首先,浏览器将参数username以utf-8编码拼接在url后面

 	http://localhost:8080/travel/testServlet?username=%E4%BD%A0%E5%A5%BD

然后,tomcat收到参数,默认以iso-8859-1进行解码,即utf-8编码的数据用iso-8859-1解码,于是出现中文乱码

解决方法:
先对参数以iso-8859-1方式进行反向编码,得到从浏览器以utf-8编码的参数,再以utf-8方式进行解码,得到中文参数。

	String username = request.getParameter("username");  
    username = URLEncoder.encode(username,"iso-8859-1");  
    username = URLDecoder.decode(username, "utf-8");  
    System.out.println(username);
上一篇:vs2015中无法设置Qt版本,qt project setting 是灰色,Qt无法编译ui文件


下一篇:php转换字符串编码 iconv与mb_convert_encoding的区别