中文乱码问题的解决方案
2016-08-10 15:07
281 查看
以POST方式提交包含中文字符的表单
以GET方式提交包含中文字符的表单
JSP文件的编码问题
在程序里将请求的字符编码方式修改为GBK,如果请求处理完以后,返回给浏览器的内容也包括中文的话,还需要设置内容的编码方式也是GBK。
对于Servlet来说,需要加入以下这两句:
对于JSP,则需要加上这两句:
GET方式的中文字符是包含在URL里面的,不属于HTTP请求的正文部分,采用setCharacterEncoding()方式是没有作用的,需要用以下代码,将字符串按照指定的编码方式进行重新包装。
针对不同编辑器会出现的乱码问题。
如果还是不行可以试试过滤器。
另外在JSP和HTML文件的头部标签中加上一句“
以GET方式提交包含中文字符的表单
JSP文件的编码问题
在程序里将请求的字符编码方式修改为GBK,如果请求处理完以后,返回给浏览器的内容也包括中文的话,还需要设置内容的编码方式也是GBK。
对于Servlet来说,需要加入以下这两句:
request.setCharacterEncoding("GBK"); response.setContentType("text/html ;charset=GBK"); //这里我比较推荐UTF-8
对于JSP,则需要加上这两句:
<%@ page contentType="text/html ;charset=GBK"%> <% request.setCharacterEncoding("GBK");%>
GET方式的中文字符是包含在URL里面的,不属于HTTP请求的正文部分,采用setCharacterEncoding()方式是没有作用的,需要用以下代码,将字符串按照指定的编码方式进行重新包装。
String param = request.getParameter("param"); param = new String(param.getBytes(),"GBK");
针对不同编辑器会出现的乱码问题。
<%@ page language="java" pageEncoding="UTF-8"%>
如果还是不行可以试试过滤器。
import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; public class CharFilter implements Filter { @Override public void destroy() { } @Override public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws ServletException, IOException { if (req.getCharacterEncoding() == null) { req.setCharacterEncoding("UTF-8"); res.setContentType("text/html ;charset=UTF-8"); chain.doFilter(req, res); } } @Override public void init(FilterConfig config) throws ServletException { } }
<filter> <filter-name>CharFilter</filter-name> <filter-class>com.throne212.javaweb.ch12.CharFilter</filter-class> </filter> <filter-mapping> <filter-name>CharFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
另外在JSP和HTML文件的头部标签中加上一句“
<meta http-equiv="content-type" content="text/html;charset=UTF-8">”,它可以让浏览器以UTF-8的编码方式去编码页面上的中文和输入的中文。然后再加上以上过滤器的作用,中文乱码的问题基本上就解决了。(数据库不是哈)
相关文章推荐
- Java 关于中文乱码问题的解决方案与经验 (2)
- Java 关于中文乱码问题的解决方案与经验 (1)
- 中文乱码问题的一些解决方案和经验
- 中文乱码问题的一些解决方案和经验
- Java 关于中文乱码问题的解决方案与经验【转载】
- Mysql与JSP网页中文乱码问题的解决方案
- 这是我们公司总结的一些关于中文乱码问题的一些解决方案和经验和大家分享!
- Mysql与JSP网页中文乱码问题的解决方案
- JSP中文乱码问题解决方案
- 用XMLHTTP Post/Get HTML页面时的中文乱码问题之完全Script解决方案
- 一些关于中文乱码问题的一些解决方案
- Java 关于中文乱码问题的解决方案与经验 (1)
- 中文乱码问题的一些解决方案和经验
- Tomcat及MySQL中文乱码问题解决方案总览
- Java 关于中文乱码问题的解决方案与经验
- Java 关于中文乱码问题的解决方案与经验(转)
- Java 关于中文乱码问题的解决方案与经验
- Mysql5.0中文乱码问题解决方案
- 从旧版升级到MySql4.1上的中文乱码问题解决方案
- 一些关于中文乱码问题的一些解决方案和经验