解决中文乱码的常见问题
荐于经常看到朋友说哪里出现中文乱码了,菜鸟我以自己在项目经常遇到的整理了一下,有以下几个方面:
1.最基本的在jsp页面上要把pageEncoding设置为中文,如: <%@ page language="java" pageEncoding="GBK"%>
2.对于表单的doPost()提交,也会出现中文出现乱码,可以在servlet里设置如下:request.setCharacterEncoding("GBK"),response.setCharacterEncoding("GBK"),不过此方法在每个servlet都要设置,很麻烦,建议写个过滤器设置。可以参考以下:
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest request_1 = (HttpServletRequest) request;
HttpServletResponse response_1 = (HttpServletResponse) response;
// 转换编码,并且加上去缓存
request_1.setCharacterEncoding("GBK");
response_1.setCharacterEncoding("GBK");
chain.doFilter(request, response);
}
3、第三种就是 如果用doGet()提交,后面跟的参数如果也是中文,这个解决方法可以在tomcat或JBoss的配置文件里面配置,以tomcat为例:
<Connector port="8099" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"/>
在这里面最后加上URIEncoding="GBK".
4、ajax也会产生乱码问题,这个问题可以在tomcat的配置那里解决。
5、文件上传时文件名也会出现乱码。
可以用此方法paramMap.put(fi.getFieldName(), new String(fi.getString().getBytes("ISO-8859-1"),"GBK"));
知识浅陋,若有错误,请大虾指正或其他更多的补充 。
1.最基本的在jsp页面上要把pageEncoding设置为中文,如: <%@ page language="java" pageEncoding="GBK"%>
2.对于表单的doPost()提交,也会出现中文出现乱码,可以在servlet里设置如下:request.setCharacterEncoding("GBK"),response.setCharacterEncoding("GBK"),不过此方法在每个servlet都要设置,很麻烦,建议写个过滤器设置。可以参考以下:
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest request_1 = (HttpServletRequest) request;
HttpServletResponse response_1 = (HttpServletResponse) response;
// 转换编码,并且加上去缓存
request_1.setCharacterEncoding("GBK");
response_1.setCharacterEncoding("GBK");
chain.doFilter(request, response);
}
3、第三种就是 如果用doGet()提交,后面跟的参数如果也是中文,这个解决方法可以在tomcat或JBoss的配置文件里面配置,以tomcat为例:
<Connector port="8099" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"/>
在这里面最后加上URIEncoding="GBK".
4、ajax也会产生乱码问题,这个问题可以在tomcat的配置那里解决。
5、文件上传时文件名也会出现乱码。
可以用此方法paramMap.put(fi.getFieldName(), new String(fi.getString().getBytes("ISO-8859-1"),"GBK"));
知识浅陋,若有错误,请大虾指正或其他更多的补充 。
...全文
相关推荐
ajax中文乱码:常见问题的解决方案解析
然而,由于编码方式的不同,中文乱码问题时有发生,这对于数据的正确性以及用户体验的影响是显著的。解决Ajax中文乱码问题,首先需要了解问题发生的根本原因,通常来说,这一问题发生在数据传输过程中。
putty中文乱码方案方法
#### 四、常见问题及解决方法- **问题**:修改了服务器端和客户端的设置后仍然出现乱码。
PLSQL中文乱码问题解决方案
#### 总结本文详细介绍了如何解决PL/SQL中的中文乱码问题,并提供了具体的步骤与方法。通过修改注册表、调整PL/SQL Developer设置以及查询验证等方式,可以有效地解决这一常见问题。
关于Mysql中文乱码问题该如何解决(乱码问题完美解决方案)
本文档详细介绍了MySQL中文乱码问题的解决方案,针对遇到的常见问题进行了深入探讨。首先,解决中文乱码的关键在于检查和调整数据库与服务端的字符集设置。通过执行`showvariableslike“%c
linux下python中文乱码解决方案详解
在Linux环境下,Python程序处理中文字符时经常遇到乱码问题,这主要涉及到编码设置和字体配置。本篇文章将深入探讨如何解决Linux下Python中文乱码的常见问题,并提供实际操作的解决方案。


Web 开发

