日本プログラミング物語

プログラミング技術を磨きながら愛国心を養うサイト

Windows版のjavacでエンコーディングMS932にマップできません

Windows版JDKのjavacコマンドは、プログラムソースファイルがShift-JISコードで書かれているものとみなします。

そのため、UTF-8で書かれた日本語混じりのプログラムをコンパイルすると、

エラー: この文字は、エンコーディングMS932にマップできません

というコンパイルエラーが発生します。

解決方法

(その1)
ソースファイルをShift-JISで保存し直す。

(その2)
javacコマンドの-encodingオプションでソースファイルの文字コードを指定する。

(例) UTF-8で書かれたJavaプログラムをコンパイルするとき

C:¥>javac -encoding utf-8 ソースファイル

Comments are currently closed.