web-dev-qa-db-ja.com

Intellij Ideaのコンソール出力でのエンコードが正しくない

それは本当におかしいようですが、私の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に等しいことがわかりました。この値がどこから来ているのかわかりません。

この問題は長い間私を悩ませてきました、そして私を助けることができる何かをウェブで見つけることができませんでした。

助けてくれてありがとう。

18
mr.nothing

これは私にとってはうまくいきます。

  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に感謝)

11
Marcos QP

試す

-Dconsole.encoding=UTF-8

の代わりに

-Dfile.encoding=UTF-8
6
sunny

私の理論では、Javaクラスファイルは「windows-1251」エンコーディングを使用しており、「UTF-8」に設定する必要があります。

以下のスクリーンショットを見てください。 enter image description hereenter image description here

すべてのファイルのエンコーディングをリセットするには、encodings.xmlを手動で編集できます。 enter image description here デフォルトのファイルエンコーディングを設定ダイアログで変更できます。 enter image description here

4
chenyi1976

間違ったファイルを変更した可能性があります、

ない: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

4
xinyong Cheng

私の場合、デバッグで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>

idea64.exe.vmoptions ファイルに-Didea.maven.surefire.disable.argLine=trueを追加することで、これを解決しました。

https://www.jetbrains.com/help/idea/configuring-output-encoding.html も参照してください。

0
Vadzim