web开发中,中文乱码情况经常发生,总结一下我的经验。
在表单提交时有两种提交的方式:get和post
如果你用的是post提交,基本上不会出现什么问题,只要你的页面编码和后台编码的方式是一样的。
用get的时候就会相当蛋疼,用post传递时,中文首先会用你的页面编码方式进行编码,然后再用
tomcat中的默认 编码一次,最后的结果就是后台取到的值是一大堆的问号。
了解清楚这些后就很容易解决了。我们倒着将这些编码解码就可以了。
sw为前台用get传过来的值,通过下面两次解码后就可以取到中文的
sw = java.net.URLEncoder.encode(sw, "ISO-8859-1");
sw = java.net.URLDecoder.decode(sw, "UTF-8");