マンガで分かる Java入門講座

第2章 アプリの作成
2-4B. [コラム] CUIアプリの文字化け

CUIアプリケーションでの文字化けについて、その解決方法を紹介します。

● CUIアプリの文字化け

 CUIアプリを「Eclipse」上で実行して、日本語の文字を入力すると、Webブラウザのように文字化けすることがあります。

 コンピュータの世界では、文字は数字で表されます。英語では1文字は1byte(256=0~255)の数字で表されます。日本語(全角文字)では、1文字は2byte(256×256=0~65535)以上の数字で表されます。

 これらの数字は、特定の文字に対応するようになっています。

表)半角英数字
文字cat
10進数9997116
16進数636174

表)全角文字(SJIS)
文字
10進数14876
16進数944C

 この数字と文字の対応は、日本語ではSJIS、UTF-8、EUCなどいくつかの種類があります。この対応形式のことを「文字コード」と呼びます。この文字コードの対応が間違っていると、文字が正しく表示されず「文字化け」と言われる現象を引き起こします。

 文字化けは、「Eclipse」の文字コードの設定と、コンソールから入力される文字の文字コードが違っている時に発生します。

 もしWindowsマシンで文字化けが発生したら、以下のように設定を変更することで、文字化けを解決できます。

手順)文字化けしないように設定を変更する方法
  1. 「Eclise」の[パッケージ・エクスプローラー]で、対象となるソース(Cui.javaなど)を右クリック。
  2. メニューが表示されるので[プロパティ]を選択する。
  3. 「~.javaのプロパティ」ダイアログが表示される。
    1. 左側のメニューから[リソース]を選ぶ。
    2. [テキスト・ファイル・エンコード]の設定で[その他]にチェックを入れる。
    3. [その他]のリストの中から「MS932」を選択する。
    4. [OK]ボタンを押す。

 こういった文字化けは、CUIアプリを作成した時の問題です。次回で説明するGUIアプリでは気にする必要はありません。GUIアプリでは、表示されるウィンドウからの入力は、Java側で適切な形に処理してから受け入れてくれます。

※ 2015年8月7日の「Eclipse 4.5 Mars」で実行したところ、文字化けは発生していなかったので、あまり気にする必要はないと思います。知識としてだけ知っておけばよいでしょう。


この講座のマンガ部分は「箱人形マンガ(Box Comic) 」で作成しています。
作成:2013/05/14  更新:2019/01/20  [Permalink]