中文显示1-编码过滤器
在做java开发时,我们会经常碰到中文显示出错的问题,解决方法一般是设置encoding,过滤器,(unicode码)资源文件等等,好用的还是过滤器。
?
过滤器的实现代码在网络上可以找到不少,但自己备份几个还是不错的。
?
过滤器1?
。。。。。。。。。。。。。。。。。。。。。。。。。。。?
类似的东西不少,前两个用过,不错;后面的从视觉上看挺漂亮,推荐!
=================================================================================
?
应用中总是发现各种各样的乱码问题,简单分类一下:
1.Java文件和JSP文件编码时产生乱码
即:在Java和jsp文件中包含中文字符,而Java或jsp在编译的时候是采用字节流的(其他编码),产生编码不一致,出现乱码。解决方法:
java文件:文件属性中的Encoding编码设置为GBK、GB2312或UTF-8
JSP文件:在文件头设置<%@ page contentType="text/html;charset=GBK"%>
?
2.和其他应用交互时产生乱码,通常会在Request中的URI产生乱码。
原因是很多程式是基于字节流的,而Java程序是基于字符流。解决办法:
Tomcat:修改conf/server.xml,找到
URIEncoding="GBK" />?在最后面加上URIEncoding="GBK".
?
另一种就是在HttpServelet中doGet方法中设置contentype=GBK,这样在处理请求前编码格式就被处理了。例:
public class MyHttpServlet extends HttpServlet { public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html; charset=GBK"); // Do Other Things } }?
?
?
?