2 に答える
さて、org.eclipse.ui.console.MessageConsole
IOConsole を拡張する を使用していると仮定します。IOConsole クラスを見ると、 から取得したgetEncodingMethod()
デフォルトのエンコーディングを返す があります。WorkbenchEncoding.getWorkbenchDefaultEncoding();
これはSystem.getProperty("file.encoding", "UTF-8");
です。そのため、プロパティ " file.encoding
" を目的のエンコーディングに設定してみてください。お役に立てれば。
ドイツ語のウムラウトをコンソールに正しく出力する最も簡単な方法は、System.console()
と が提供するメソッドを使用することです。
もう 1 つの方法は、たとえばシステム プロパティを介して、エンコーディングを外部で使用するように構成することです。次に、アプリケーションはそのエンコーディングを使用して、必要なライター、リーダー、およびストリームを作成する必要があります。Windows システムの場合、このエンコーディングはIBM850
.
問題は、Windows ではデフォルトのエンコーディングがとCp1252
にも使用されることです。しかし、Windows コンソールはJavaのエンコーディングに対応する (DOS 時代からの遺産) を使用します。とは互換性がないため、文字がめちゃくちゃになります。System.out
System.in
codepage 850
IBM850
Cp1252
IBM850