Intellij Idea在控制台输出

时间:2016-02-05 18:41:55

标签: java intellij-idea encoding utf-8 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。
  4. 完成所有这些操作仍然没有运气,并且控制台中没有正确显示符号。我试图调试java.io.PrintStream #println(java.lang.String)方法,发现System.out.textOut.out.se.cs等于windows-1251。不知道这个价值来自哪里。

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

    提前感谢您的帮助。

5 个答案:

答案 0 :(得分:7)

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

不是: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

答案 1 :(得分:5)

尝试

-Dconsole.encoding=UTF-8

而不是

-Dfile.encoding=UTF-8

答案 2 :(得分:2)

我的理论是你的java类文件正在使用" windows-1251"编码,你需要设置它" UTF-8"。

查看下面的屏幕截图。 enter image description here enter image description here

要重置所有文件编码,您可以手动编辑encodings.xml。 enter image description here 您可以在设置对话框中更改默认文件编码。 enter image description here

答案 3 :(得分:1)

这对我有用。

  1. 关闭您的intellij想法
  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构想。

希望对您有帮助。

对不起,我的英语。我还在学习。 (感谢@MrPromethee的建议)

答案 4 :(得分:0)

在我的案例中,在调试中检查System.out.textOut.out.se.cs暗示了每个JUnit运行配置的IDEA picked up maven surefire arguments

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <configuration>
        <!-- force 7-bit default encoding to ensure that nothing depends on it -->
        <argLine>-Dfile.encoding=ASCII</argLine>
    </configuration>
</plugin>

我已通过将-Didea.maven.surefire.disable.argLine=true添加到idea64.exe.vmoptions文件来解决此问题。

另见https://www.jetbrains.com/help/idea/configuring-output-encoding.html