关于JAVA IDE开发工具,Eclipse系列和Intelli IDEA是大部分公司的主要选择,从开发者的选择角度,Intellij IDEA似乎比Eclipse系列更受欢迎一些。当我们使用Intellij IDEA开发时,我们发现出现中文乱码问题,造成中文乱码的根本原因时开发工具和系统环境编码格式不匹配,本篇采用理论结合实际的角度,彻底解决该问题。
一 Intellij IDEA乱码问题重现
如下图所示,Intellij IDEA显示中文为乱码。
![](https://i-blog.csdnimg.cn/blog_migrate/fe2e896b822767800f27f591408e96cd.png)
二 解决问题
(一)问题识别
根据Intellij IDEA控制台输出,Tomcat Catalina Log出现乱码,因此可以将问题定位到Tomcat上。那么,我们看看Tomcat控制台是否出现乱码。
![](https://i-blog.csdnimg.cn/blog_migrate/e6e2da0d67def938e5a763c8b311a051.png)
果然,是Tomcat输出时出现问题。
(二)解决问题
1.查看系统编码格式,936代码GB格式
![](https://i-blog.csdnimg.cn/blog_migrate/ada2b1657fe875aab7bf0d72f6ed50e8.png)
如下代码页和编码格式对应关系
代码页 国家(地区)或语言
437 美国
708 阿拉伯文(ASMO 708)
720 阿拉伯文(DOS)
850 多语言(拉丁文 I)
852 中欧(DOS) - 斯拉夫语(拉丁文 II)
855 西里尔文(俄语)
857 土耳其语
860 葡萄牙语
861 冰岛语
862 希伯来文(DOS)
863 加拿大 - 法语
865 日耳曼语
866 俄语 - 西里尔文(DOS)
869 现代希腊语
874 泰文(Windows)
932 日文(Shift-JIS)
936 中国 - 简体中文(GB2312)
949 韩文
950 繁体中文(Big5)
1200 Unicode
1201 Unicode (Big-Endian)
1250 中欧(Windows)
1251 西里尔文(Windows)
1252 西欧(Windows)
1253 希腊文(Windows)
1254 土耳其文(Windows)
1255 希伯来文(Windows)
1256 阿拉伯文(Windows)
1257 波罗的海文(Windows)
1258 越南文(Windows)
20866 西里尔文(KOI8-R)
21866 西里尔文(KOI8-U)
28592 中欧(ISO)
28593 拉丁文 3 (ISO)
28594 波罗的海文(ISO)
28595 西里尔文(ISO)
28596 阿拉伯文(ISO)
28597 希腊文(ISO)
28598 希伯来文(ISO-Visual)
38598 希伯来文(ISO-Logical)
50000 用户定义的
50001 自动选择
50220 日文(JIS)
50221 日文(JIS-允许一个字节的片假名)
50222 日文(JIS-允许一个字节的片假名 - SO/SI)
50225 韩文(ISO)
50932 日文(自动选择)
50949 韩文(自动选择)
51932 日文(EUC)
51949 韩文(EUC)
52936 简体中文(HZ)
65000 Unicode (UTF-7)
65001 Unicode (UTF-8)
2.解决Tomcat输出乱码问题
用Notepad++打开Tomcat安装源码conf文件夹下的logging.properties文件。
![](https://i-blog.csdnimg.cn/blog_migrate/dcf55a7fea9ff463c7d588a785b5c1dd.png)
如下logging.properties文件内容,将下图标记的UTF-8改为GBK
![](https://i-blog.csdnimg.cn/blog_migrate/0ccbb429c47408e8e2daf79304a8548c.png)
如下为更换为GBK后的文件内容
![](https://i-blog.csdnimg.cn/blog_migrate/87f5631f011c1153f6215722239d9538.png)
3.重新启动Tomcat,乱码问题解决
![](https://i-blog.csdnimg.cn/blog_migrate/e190c36ce6f9b1dc10830804b9d4f48a.png)
4.再打卡Intellij IDEA,乱码问题已解决
![](https://i-blog.csdnimg.cn/blog_migrate/899f17cf980cbd1f617e35edd7d4f51d.png)
三 拓展
网上有些博友提供了如下解决方法。
1.设置文件格式。File=>Settings=>Appearance&Behavior=>Appearance
![](https://i-blog.csdnimg.cn/blog_migrate/d709258b963fb75205642d053ef90ec8.png)
2.删除idea文件夹下的encoding.xml文件除utf-8外的所有文件
3.设置Inllij idea文件编码格式,设置为UTF-8。File=>Settings=>Editor=>File Encodings
![](https://i-blog.csdnimg.cn/blog_migrate/72916c431158e596386340197ada1652.png)
4.配置Tomcat VM options值为:-Dfile.encoding=UTF-8
![](https://i-blog.csdnimg.cn/blog_migrate/505699da2d147621c167953dd5813459.png)
5.打卡Intellij idea安装目录,在bin目录下的idea.exe.vmoptions和idea64.exe.vmoptions两个文件结尾添加
-Dfile.encoding=UTF-8
![](https://i-blog.csdnimg.cn/blog_migrate/f7a49c727103575b4761d31cae4a988c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/85b7840a52330b666602af4e49eda62a.png)
在文件中追加 -Dfile.encoding=UTF-8
![](https://i-blog.csdnimg.cn/blog_migrate/d42b0c68b96a5d117b465b9523432374.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5648833afc0d34fd8f3db5753b7932fc.png)
若本号内容有做得不到位的地方(比如:涉及版权或其他问题),请及时联系我们进行整改即可,会在第一时间进行处理。欢迎大家点赞,转发加评论