设置了编码格式但idea控制台中文输出仍然乱码的问题
·
项目场景:
当我们需要使用idea后台输出一些中文变量进行调试时,这个bug就很麻烦
问题描述
在idea设置了UTF-8的编码,控制台输出的中文是乱码,但是当我们打印到网页中的中文是正常的
比如:
String user = req.getParameter("username");
String psw = req.getParameter("password");
System.out.println("User: " + user);
这是我们后台获取的输出(乱码状态): 
这是我们网页使用getWriter输出的(正常):
原因分析:
这是因为我们没有对idea后台进行设置,所以导致了程序运行时的中文乱码问题:
解决方案:
参考了网络上的一些博客,问题终于得到解决,大致分为以下几步:
- 1.设置字符编码为 UTF-8
点击菜单 File -> settings -> Eitor -> File Encodings ,将字符全局编码、项目编码、配置文件编码统一设置为UTF-8,之后点击Apply,再点击OK。
-
- 修改 IDEA 配置文件,让其支持中文编码
上方导航栏“Help→Etit Custom VM Options…”进入自定义虚拟机选项页面,添加如下代码
-Dfile.encoding=UTF-8
- 修改 IDEA 配置文件,让其支持中文编码
- 3.找到 IDEA 的安装目录,进入 /bin 文件夹,找到下面两个文件,同样添加如下代码:
-Dfile.encoding=UTF-8

注意新版本的idea,只有一个idea64.exe.vmoptions,只需要对该配置文件修改即可。
-
- 将控制台底部设置为utf-8

- 将控制台底部设置为utf-8
- 5.修改Tomcat的编码
- 在tomcat目录下apache-tomcat-9.0.93\conf\server.xml中,新增:URIEncoding=“UTF-8”
<!-- 增加URIEncoding="UTF-8" --> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxParameterCount="1000" URIEncoding="UTF-8" /> - 在Run/Debug Configurations中修改VM options

- 在tomcat目录下apache-tomcat-9.0.93\conf\server.xml中,新增:URIEncoding=“UTF-8”
-
- 相关配置修改完成后, 需重启 IDEA, 才能让设置生效 , 再次查看即可解决中文乱码问题
更多推荐




所有评论(0)