【Java】编程过程中遇到的中文编码问题
2017-07-20 14:32
316 查看
前言
在使用中文输入或输出的时候,我们经常会遇到乱码的情况,需要进行转码才能解决这个问题,下面是我在编程过程中遇到的一些关于中文乱码的情况以及解决方法。一、在使用Servlet向浏览器输出中文时,显示乱码
解决方法:在方法体的最前面加上两个转码函数:
request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8");
二、在进行表单提交获取数据时,中文乱码
尽管在最前面加了request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8");
但还是显示
于是用了
new String(req.getParameter("UserName").getBytes("utf-8"));
此时显示的是:
最后是用
new String(req.getParameter("UserName").getBytes("iso-8859-1"),"utf-8");解决的:
那为什么通过URL传递中文参数会出现乱码呢?
原因:Http请求传输时将url以ISO-8859-1编码,服务器收到字节流后默认会以ISO-8859-1编码来解码成字符流(造成中文乱码)。
解决办法:我们需要把request.getParameter(“参数名”)获取到的字符串先用ISO-8859-1编码成字节流,然后再将其用utf-8解码成字符流。
三、HttpPost 传递参数中文乱码
要事先在StringEntity上写好转码。如下图代码:相关文章推荐
- Java编程过程中遇到的问题记录
- java中文乱码问题----java不同场景编码转换过程
- java 修改jar中的menifest.mf文件后重新打包过程中遇到的中文问题解决
- Python中文编码过程中遇到的一些问题
- Php+MYSQL中文编码问题解决全过程
- 关于Java编程的中文问题的几条分析原则
- 转载:Java中文问题详解,底层编码解剖
- JAVA DOM4J编程遇到的一个问题
- Java中文&编码问题小结
- JAVA中文编码问题的小体会
- php使用 MsSql server时遇到的中文编码问题
- java中 中文问题详解-Java基础-Java-编程开发
- 学习JAVA语言过程中遇到了一些问题
- jsp,java中文乱码问题另类解决方案,jni加密、解密编码
- JAVA/J2ME中文编码问题完全解决方案
- 剖析JAVA编程中的中文问题
- JAva Excel api 中的编码和中文问题
- Java中文&编码问题小结(转载)
- 2007年11月10日 我会把我学JAVA过程中遇到的问题都一一写在博客上
- jsp/java中文编码问题的完全解决的方案