如何处理java的乱码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何处理java的乱码相关的知识,希望对你有一定的参考价值。

     为什么说乱码是中国程序员无法避免的话题呢?这个首先要从编码机制上说起,大家都是中文和英文的编码格式不是一样,解码也是不一样的!

如果中国的程序员不会遇到乱码,那么只有使用汉语编程。汉语编程是怎么回事,我也不大清楚。

     我写这个不是讲解中英文之间的差距,解码等,我只是结合我遇到的乱码问题,然后做了一个解决乱码的总结。

1、utf8解决JSP中文乱码问题

一般说来在每个页面的开始处,加入:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

 

2.如果项目里面有乱码:

右击项目名—>properties->Resource->Text file encoding中点击->other选择UTF-8

 

 3、Tomcat 5.5中文乱码

1)只要把%TOMCAT安装目录

%/   webapps\servlets-examples\WEB-INF\classes\filters\SetCharacterEncodingFilter.class文件拷到你的webapp目录/filters下,如果没有filters目录,

就创建一个。  

2)在你的web.xml里加入如下几行:

<filter>   
<filter-name>Set   Character   Encoding</filter-name>  
<filter-class>filters.SetCharacterEncodingFilter</filter-class>  
<init-param>  
<param-name>encoding</param-name>  
<param-value>GBK</param-value>  
</init-param>  
</filter>  
<filter-mapping>  
<filter-name>Set   Character   Encoding</filter-name>  
<url-pattern>/*</url-pattern>  
</filter-mapping>

4、get方式的解决办法

打开tomcat的server.xml文件,找到区块,加入如下一行: 

  URIEncoding=”GBK”

完整的应如下:

<connector  <br="">port="80"   maxThreads="150"   minSpareThreads="25"  
maxSpareThreads="75"  enableLookups="false" redirectPort="8443"  
acceptCount="100" debug="0"  connectionTimeout="20000"    
disableUploadTimeout="true"   URIEncoding="GBK"   />

5.jar包中有乱码

1)在eclipse菜单栏中,Window–>Preferences–>General–>Content types将JAR Content , Java Class File 的Default encoding都设置为你要的编码

2)光设置上面的还不行,还需要再设置Workspace的编码。Window–>Preferences–>General–>Workspace,将Text file encoding的默认编码也设置为

和上面一致的编码。

3)保存,重启Eclipse即可发现乱码问题解决了。

 6.html5 utf-8中文乱码的解决方法

html5 UTF-8出现中文乱码的情况,应该有很多的朋友都有遇到吧,用记事本写,保存后在网页上运行出现了乱码,换成GB2312能正确显示中文,

下面就为大家探讨下具体的解决方法

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>HTML5的标题</title> 
</head> 
<body> 
<p>HTML5的内容!Hello</p> 
</body> 
</html>

     用记事本写,保存后在网页上运行出现了乱码,换成GB2312能正确显示中文

     代码没有问题,问题就出记事本身上。 <meta charste="utf-8"> 只是告诉浏览器要用utf-8来解释,而文档的编码,是在你保存时的选择决定的,

如果保存ANSI 然后用utf-8解释,肯定是乱码,记事本的话,默认保存的文件格式是ANSI,所以在保存的时候要修改为uif-8。

7.js 文件中文显示乱码

      javascript文件XX.js编辑保存时有一种编码方案(如GBK),当打开文件的时候所用的编码(如UTF-8)和保存时的编码方案不一致时,则会出现中文显示乱码。

解决方案:

(1) 用编辑器打开浏览的时候,选择和原文件编码(如GBK)一致的编码方式查看,则不会出现乱码;
(2)在eclipse中的package explorer中选中乱码的XX.js,右键菜单中选择properties,在Text file encoding中选择与XX.js编辑保存时的编码(如GBK),则可以正常显示;

8.网站页面中JavaScript中中文字段乱码

在eclipse或者编辑器中XX.js中中文显示正常,在页面调用XX.js,执行后页面结果中中文字段显示乱码。

解决方案:

在引用XX.js的页面上“显示”加上XX.js文件的编码方式,使之与XX.js文件的本身的编码方式(如GBK)保持一致。

<script type="text/javascript" language="JavaScript" src="/js/XX.js" charset=“GBK”></script>

建议:

(1)在用Eclipse或者Myeclipse新建XX.js,进行编辑时,建议先将Text file encoding改为UTF-8,然后进行编辑保存。
(2)用文本文档或者其他编辑器编辑保存XX.js, 建议以UTF-8的编码方式保存。
(3) 在引用XX.js的页面上“显示”加上XX.js文件的编码方式UTF-8。

<script type="text/javascript" language="JavaScript" src="/js/XX.js" charset=“utf-8”></script>

 

以上是关于如何处理java的乱码的主要内容,如果未能解决你的问题,请参考以下文章

在片段之间切换时如何处理相机?

如何处理片段和活动中的后压

org.apache.commons.net.ftp.FTPClient下载中文文件夹乱码如何处理?

Servlet----------在使用doGet()和doPost()是如何处理中文乱码

如何处理片段中的onClick [重复]

如何处理片段上的触摸事件?