Intellij Idea控制台输出中的编码错误

mr.*_*ing 15 java encoding utf-8 intellij-idea character-encoding

它似乎真的很疯狂,但我无法在我的intellij想法的控制台中使用破碎的编码做任何事情.

我为克服这个问题做了些什么:

  1. 在idea.exe.vmoptions和idea64.exe.vmoptions中设置-Dfile.encoding = UTF-8和-Dfile.encoding = UTF-8(虽然我使用64位版本).
  2. 添加了-Dfile.encoding = UTF-8和-Dfile.encoding = UTF-8来运行/调试我的应用程序的配置.
  3. 更改设置>编辑器>文件编码IDE编码/项目编码/属性文件的默认编码为UTF-8.

完成所有这些操作仍然没有运气,并且控制台中没有正确显示符号.我试图调试java.io.PrintStream #println(java.lang.String)方法,发现System.out.textOut.out.se.cs等于windows-1251.不知道这个价值来自哪里.

这个问题困扰了我很长一段时间,我无法在网上找到任何可以帮助我的东西.

在此先感谢您的帮助.

小智 30

这对我有用。

  1. 关闭你的智能想法
  2. 在安装的idea中搜索并打开idea.exe.vmoptions文件,例如:“C:\Program Files\JetBrains\IntelliJ IDEA 2018.3.2\bin”。添加下一行后:-Dfile.encoding=UTF-8
  3. (可选)如果您有文件idea64.exe.vmoptions,也添加相同的行。
  4. 开始您的 Intellij 想法。

  • 谢谢!!也可以通过“帮助 > 编辑自定义 VM 选项...”进行访问,然后重新启动 IntelliJ。我确实尝试了一切:更改 IntelliJ 中各处的编码设置,更改属性文件、build.gradle 文件、IntelliJ、运行配置、环境变量等设置的 JVM 选项。还尝试更改系统范围的编码,但没有任何效果。 (14认同)
  • 两点: - 我强烈推荐@Nicolas 的选项,因为我的路径不在程序文件下,而是 `C:\Users\name\.IdeaIXXX\config\idea64.exe.vmoptions` - 如果它仍然不起作用,验证文件的编码是否也是“UTF8”,@chenyi1976 在下面放了一个很好的教程 (2认同)

小智 11

您可能修改了错误的文件?

不是 : C:\Program Files\JetBrains\IntelliJ IDEA xxxx\bin\idea64.exe.vmoptions

应该: C:\Users\USER_NAME\.IntelliJIdeaxxxx\config\idea64.exe.vmoptions

你可以同时添加-Dfile.encoding=UTF-8-Dconsole.encoding=UTF-8

  • 对于版本“2020.x”,我沿着以下路径找到了一个配置文件:“C:\Users\USER_NAME\AppData\Roaming\JetBrains\IntelliJIdea2020.x\idea64.exe.vmoptions”。添加了这两个参数,重新启动,现在显示的文字是正确的。谢谢! (2认同)

sun*_*nny 5

尝试

-Dconsole.encoding=UTF-8
Run Code Online (Sandbox Code Playgroud)

代替

-Dfile.encoding=UTF-8
Run Code Online (Sandbox Code Playgroud)


che*_*976 5

我的理论是你的java类文件使用“windows-1251”编码,你需要将它设置为“UTF-8”。

看看下面的截图。 在此处输入图片说明 在此处输入图片说明

要重置所有文件编码,您可以手动编辑 encodings.xml。 在此处输入图片说明 您可以在设置对话框中更改默认文件编码。 在此处输入图片说明