25
2006
09

提交表单时的中文乱码问题

在工作中,经常遇到这样的bug,jsp页面提交时,如果提交的是英文字符,能正确显示;如果提交中文时就会出现乱码这种情况一般是由于编码不同引起的。 产生原因:Tomcat下面总是会把GET/POST过来的reqest.parameters以ISO8859-1来解码,但中文系统下的浏览器的缺省方式是以UTF-8提交发送请求的,而UTF-8、GB2312和iso8859-1的编码方式不一样,导致取到的表单数据为不能识别的乱码。 解决办法: 1.通过request.setCharacterEncoding("****")对请求进行统一编码,就实现了中文的正常显示。比如,要求页面统一用GB2312来处理中文代码,就在处理页面的代码中插入: < % request.setCharacterEncoding("GB2312"); %> 2.在JSP页面强制指定编码为UTF-8来解决。 3.通过Filter来解决。
« 上一篇 下一篇 »