成長人生、「投資場!!」

このブログは「秋葉」と「江南」の2人で、IT・ITC系の情報や、社会人ノウハウを発信します。基本的に週一更新で記事は交互に作成しています。

【Java】コンパイル時のエラー「この文字は、エンコーディングMS932にマップできません」

 

皆さんこんにちは、江南です。

 

プログラミングの勉強を初めて、早4ヶ月。

今日もゴリゴリ、お手本コードを書き写してます。

 

そのコードをコマンドプロンプトで実行しようとした際、最初ほんとにうまく行かなかったんです。

 

今回は、その原因を一応参考に残して置きたいと思います。

 

 

ファイルをコンパイルしようとすると、エラーになる!!

 

コマンドプロンプト上でJavaを実行するとき、コンパイルを行う必要があります。

 

Javaのファイルをコンパイルする際のコマンド(私は呪文と呼んでいます)は、

 

javac

 

でしたね。

 

しかし、「 javac [ファイル名.java] 」と入力してみると以下のようなエラーが出てきました。

 

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

     System.out.println(“文字化け”)

 

 

結論から言います。

 

私の場合、このエラーの原因は文字のエンコードでした。

 

 

そこで、調べた結果、このようにコンパイル時のコマンドを変更することで、解消しました。

 

javac -encoding utf-8 ファイル名.java

 

これで、エラーが出ず、コンパイルを終えることができます。

そうしたら、

 

java ファイル名

 

で、コマンドプロンプト上で文字化けせずに、実行することができました。

 

 

おわりに

いやー、プログラミングってほんと、奥が深いですね(白目)

 

※なお、utf-8 以外にも、

 

javac -encoding sjis ファイル名.java

 

など、いろいろ文字のエンコーディングはあるようです。

 

いやー、ほんと(省略)