彻底解决Intellij IDEA中文乱码问题
关于JAVA IDE开发工具,Eclipse系列和Intelli IDEA是大部分公司的主要选择,从开发者的选择角度,Intellij IDEA似乎比Eclipse系列更受欢迎一些。当我们使用Intellij IDEA开发时,我们发现出现中文乱码问题,造成中文乱码的根本原因时开发工具和系统环境编码格式不匹配,本篇采用理论结合实际的角度,彻底解决该问题。
一 Intellij IDEA乱码问题重现
如下图所示,Intellij IDEA显示中文为乱码。

二 解决问题
(一)问题识别
根据Intellij IDEA控制台输出,Tomcat Catalina Log出现乱码,因此可以将问题定位到Tomcat上。那么,我们看看Tomcat控制台是否出现乱码。

果然,是Tomcat输出时出现问题。
(二)解决问题
1.查看系统编码格式,936代码GB格式

如下代码页和编码格式对应关系
代码页 国家(地区)或语言
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文件。

如下logging.properties文件内容,将下图标记的UTF-8改为GBK

如下为更换为GBK后的文件内容

3.重新启动Tomcat,乱码问题解决

4.再打卡Intellij IDEA,乱码问题已解决

三 拓展
网上有些博友提供了如下解决方法。
1.设置文件格式。File=>Settings=>Appearance&Behavior=>Appearance

2.删除idea文件夹下的encoding.xml文件除utf-8外的所有文件
3.设置Inllij idea文件编码格式,设置为UTF-8。File=>Settings=>Editor=>File Encodings

4.配置Tomcat VM options值为:-Dfile.encoding=UTF-8

5.打卡Intellij idea安装目录,在bin目录下的idea.exe.vmoptions和idea64.exe.vmoptions两个文件结尾添加
-Dfile.encoding=UTF-8

彻底解决Intellij IDEA中文乱码问题的更多相关文章
- 解决IntelliJ Idea中文乱码问题
乱码的根源是字符编码与解码不一致 解决之道:统一编码
- Intellij output 中文乱码
使用intellij有一段时间了,intellij output中文乱码,每次使用这两点解决,就可以解决乱码问题. 1.修改启动参数 修改安装Intellij目录下的C:\Program Files ...
- 教你解决Sublime Text中文乱码问题
教你解决Sublime Text中文乱码问题[转载自成长的企鹅] Sublime Text 2是一个非常不错的源代码及文本编辑器,但是不支持GB2312和GBK编码在很多情况下会非常麻烦. ...
- 分享一个解决MySQL写入中文乱码的方法
分享一个解决MySQL写入中文乱码的方法 之前有发帖请教过如何解决MySQL写入中文乱码的问题.但没人会,或者是会的人不想回答.搜索网上的答案并尝试很多次无效,所以当时就因为这个乱码问题搁浅了一个软件 ...
- 完美解决Informix的中文乱码问题
完美解决Informix的中文乱码问题 Informix是IBM旗下的一款数据库,要不是这个项目需要,估计这辈子我都不知道居然还有这么一款数据库.想来公司的项目遍布全国各地,各种部署环境各种应用场景 ...
- 使用过滤器(Filter)解决请求参数中文乱码问题(复杂方式)
前述: 在写这篇笔记之前,对笔记中的设计模式进行介绍: 本篇笔记中将要使用到的设计模式是:装饰(包装)设计模式 (1)装饰(包装)设计模式口诀: ...
- 解决Ubuntu系统中文乱码显示问题,终端打开文件及查看目录
解决Ubuntu系统中文乱码显示问题 [日期:2014-02-20] 来源:Linux社区 作者:njchenyi [字体:大 中 小] 我是先安装了Ubuntu 12.04 Server,然后 ...
- gedit 没有preference项,使preference回归,并用命令行设置行号,解决centos7下中文乱码,text wrapping等问题
1. 最简单的,使preference选项回来: gsettings set org.gnome.settings-daemon.plugins.xsettings overrides '@a{sv} ...
- 尚硅谷面试第一季-09SpringMVC中如何解决POST请求中文乱码问题GET的又如何处理呢
目录结构: 关键代码: web.xml <filter> <filter-name>CharacterEncodingFilter</filter-name> &l ...
随机推荐
- 【转】linux下使用sqlplus执行包含语句块的sql文件,运行时会不断显示行号,而在plsqldev中能执行
一.数据库:Oracle数据库 二.sql文件内容: --创建函数 CREATE OR REPLACE function fun_createuid1 return varchar2 is Resul ...
- 2018-8-10-win10-uwp-退出程序
原文:2018-8-10-win10-uwp-退出程序 title author date CreateTime categories win10 uwp 退出程序 lindexi 2018-08-1 ...
- ArrayList、LinkedList和Vector的源码解析,带你走近List的世界
java.util.List接口是Java Collections Framework的一个重要组成部分,List接口的架构图如下: 本文将通过剖析List接口的三个实现类——ArrayList.Li ...
- JavaScript中break、continue和return的区别
break function myBreak() { for(var i = 0; i < 5; i++) { if(i == 3) { break; } console.log(i); } } ...
- Socket简单实现ssh笔记
Scoket概念: socket本质上就是在2台网络互通的电脑之间,架设一个通道,两台电脑通过这个通道来实现数据的互相传递. 我们知道网络 通信 都 是基于 ip+port 方能定位到目标的具体机器上 ...
- 安装Ubuntu系统后的配置工作
目录 卸载webapps和LibreOffice 修改软件更新和安装的apt源 修改安装python库的pip源 安装并设置搜狗输入法 安装vim.git.pip和tweak软件 修改用户主目录下的文 ...
- 为什么 Redis 为什么如此受欢迎
现在大多数开发人员都会听说过 Redis.Redis 是目前市场上最好的开源内存 NoSQL 数据库之一.它为前端以及后端服务(如键值查找,队列,哈希等)提供了非常多的帮助. 一.什么是 Redis? ...
- 访问rabbitmq-server失败
测试项目正常运行突然访问不了,各项目启动失败,查看日志发现是RabbitMQ拒绝连接. 重启后依然失败,看var/log/rabbitmq/startup_err 发现什么错误信息也没有,后查看磁盘空 ...
- Python—基本数据类型
核心数据类型: 数字(int整型.float浮点型.complex复数.bool布尔型) 字符串 str 列表(List) 元组(Tuple) 字典(Dictionary) 集合() 数字 整数,浮点 ...
- Ubuntu16.04初始配置
Ubuntu16.04初始化 清理系统 删除libreoffice:sudo apt-get remove libreoffice-common 删除Amazon链接:sudo apt-get rem ...