ファイルを開くか書き込むたびに、特定のエンコーディングが適用されます。しかし、IDE (あなたの場合は Eclipse) にもエンコーディングがあることを忘れることがあります。
引用符の間に特定のテキストを入力すると、特定のエンコーディング (IDE のエンコーディング) で表示および入力されます。出力ストリームのエンコーディング (UTF-8) によって、テキストがその特定のエンコーディングで表示されることも保証されると想定しています。ただし、ここでも IDE のエンコーディングが適用されると思います。
日食のエンコードを再確認することをお勧めします。おそらく、これで問題が解決する可能性があります。試してみる価値はありますね。:)
グローバル エンコーディング設定の場合、次のコードを eclipse.ini ファイルに追加します。
-Dfile.encoding=UTF-8
編集:
以下を追加したいと思います。実験として次の手順を実行しました。
- Notepad++ を開き、新しいファイルを作成しました
- エンコード設定を UTF-8 に変更しました
- あなたのロシア語のテキストをコピーし、新しいテキスト ファイルに貼り付けて保存しました。
- 次に、Windows コンソール (「cmd」) を開きました。
- 「chcp 65001」コマンドを実行しました。
- 次に、ファイルの内容をコンソールに出力しました:「type file.txt」
- すべてが正しく表示されます。
これは多くのことを確認するものではありませんが、コンテンツが正しいエンコーディングで予見されている場合、DOS が仕事を行うことができるという事実を確認します。
EDIT2:
@ ka3ak 2年以上経ちましたが、Java I/OIに関する本を読んでいるときに、次のことに出くわしました。
System.console().printf(...)
System.out.println(...)
メソッドよりも特殊文字のサポートが優れています。
PrintStream
ストリームをラップするだけなのでSystem.out
、同じ制限があると思います。これで問題が解決したかどうか疑問に思っています。それでも問題ない場合は、試してみてください。:)
stackoverflow に関する他の投稿では、同様のことが報告されています: console.writeline および System.out.println