当前位置: 代码迷 >> Web前端 >> 中文乱码有关问题解决
  详细解决方案

中文乱码有关问题解决

热度:136   发布时间:2012-10-31 14:37:31.0
中文乱码问题解决

1.?post方式提交的数据 采用request.setCharacterEncoding(“gbk”);
?get提交的数据 在tomcat 目录下的conf中server.xml中元素<Connector>中增加属性: useBodyEncodingForURI="true",则1中的方法对get方式提交的数据也有效
2.?通用方法 new String(str.getBytes(“iso-8859-1”),”gbk”)

?

以后解决乱码问题:首先将tomcat/conf/server.xml文件中的<Connector>中增加属性: useBodyEncodingForURI="true",记住这个<Connector>指的是tomcat修改端口的元素
加上这句话以后对于get或者是post的提交方式 request.setCharacterEncoding("UTF-8");都是通用的

如果说偶尔会发生加上上面这句话 有些中文问题然后乱码,用最直接的方法new String(str.getBytes(“iso-8859-1”),”gbk”)

?


完美解决乱码问题:第一步,将tomcat/conf/server.xml文件中<Connector>中增加属性: useBodyEncodingForURI="true",这样对于get或者post的提交方式? request.setCharacterEncoding("UTF-8");都是通用的
第二步:写一个编码集过滤器? 将工程下面所有的请求都要先执行过滤器里面的代码(request.setCharacterEncoding("UTF-8");)然后再继续执行之前的请求

?

过滤器的写法:
?1.创建一个java类 实现javax.servlet.Filter这个接口
?2.在web.xml文件进行过滤器的配置 通常情况过滤器的配置写到web.xml文件的上面(servlet的上面)

  相关解决方案