Intellij Idea控制台输出中的编码错误
它似乎真的很疯狂,但我无法在我的intellij想法的控制台中使用破碎的编码做任何事情。
我为克服这个问题做了些什么:
- 在idea.exe.vmoptions和idea64.exe.vmoptions中设置-Dfile.encoding = UTF-8和-Dfile.encoding = UTF-8(虽然我使用64位版本)。
- 添加了-Dfile.encoding = UTF-8和-Dfile.encoding = UTF-8来运行/调试我的应用程序的配置。
- 更改设置>编辑器>文件编码IDE编码/项目编码/属性文件的默认编码为UTF-8。
完成所有这些操作仍然没有运气,并且控制台中没有正确显示符号。 我试图调试java.io.PrintStream #println(java.lang.String)方法,发现System.out.textOut.out.se.cs等于windows-1251。 不知道这个价值来自哪里。
这个问题困扰了我很长一段时间,我无法在网上找到任何可以帮助我的东西。
在此先感谢您的帮助。
尝试
-Dconsole.encoding=UTF-8
代替
-Dfile.encoding=UTF-8
我的理论是你的java类文件使用“windows-1251”编码,你需要将它设置为“UTF-8”。
看下面的截图。
要重置所有文件编码,您可以手动编辑encodings.xml。 您可以在设置对话框中更改默认文件编码。
在我的例子中,在调试中检查System.out.textOut.out.se.cs
暗示IDEA为每个JUnit运行配置选择了maven surefire参数 :
org.apache.maven.plugins maven-surefire-plugin -Dfile.encoding=ASCII
我通过在idea64.exe.vmoptions文件中添加-Didea.maven.surefire.disable.argLine=true
来解决这个问题。
另请参见https://www.jetbrains.com/help/idea/configuring-output-encoding.html 。