文字化けの原因と対策
電子メールやホームページで、文字が化けていて読めないことがありますね。 インターネット社会の中では、是非無くしたいことの一つです。
今回は、ごく簡単な文字化けの原因と対策について触れます。 詳しくは、文末に挙げた参考サイトをご覧下さい。
漢字コードと文字化け
漢字コードの違いによる文字化け
漢字コードの違いによる文字化け半角英数字を表すASCIIコードは、 どのようなマシンでもほぼ世界共通ですが、 日本語のコードは機種によって違っている可能性があります。 漢字コードの異なる計算機にファイルを持っていくと、 日本語部分が文字化けを起こして読めなくなりますので注意が必要です。 以下に、代表的な漢字コードについて説明します。
-
漢字コードの種類
- JISコード: JISコードは、日本工業規格(JIS)で定められた文字コードです。 メールサーバなどインターネットでのプログラムは、 インターネット上でデータを流す際には、 JISコードを用いるルールになっています。 厳密には、 JISコードから半角カタカナを抜いたISO-2022-JPが用いられています。 半角カタカナコードは、 インターネットでは伝送に際して問題を起こしますので、 使用することはできません。
- シフトJISコード: PCでは、シフトJISと呼ばれる文字コードが普及しています。 シフトJISコードは、文字の種類や並びはJISと同じで、 コード番号だけをシフトしたものです。 主に米国製ソフトウェア移植時の容易さが元で普及しました。
- UCコード: 拡張UNIXコードと呼ばれる文字コードで、 UNIXマシンの標準的な漢字コードになっています。
- Unicode: 世界の全ての文字を統一的に16ビットの固定長で表そうとする規格です。 WindowsNTでは、内部コードとしてUnicodeが使われています。
このように漢字コードの体系の違いによる文字化けと、 ルール違反の半角カタカナを使用した場合の文字化けがあります。 その他に、計算機の開発メーカーが独自に開発して、 漢字コードに加えている「機種依存文字」も、文字化けの原因になります。 「丸囲み数字」などは、結構普及しておりますので注意が必要です。
異なる機種間でのデータ伝送時の文字化け
-
OSが異なると、
漢字コード以外に改行コードによる違いが出てくるので注意が必要です。
-
変換プログラム等を使用して、修正してやる必要があります。
- UNIXでは、qkcというプログラムを使う方法が普及しており、 漢字コードと改行コードの変換を行うことができます。
- Windowsでは、秀丸エディタというプログラムが普及しており、 同様の変換を行ったり、漢字コードの違うファイルを開いたりできます。
-
変換プログラム等を使用して、修正してやる必要があります。
- 漢字コードの違いだけが原因で文字化けしている場合には、 このようなプログラムを利用することにより、 正常に読み込むことができる場合が多いでしょう。
| OS | 改行コード |
| UNIX | LF |
| MS Windows | CR+LF |
| Mac OS | CR |
ファイル伝送時の問題
- FTPなどを用いて、ファイルを伝送する際にも漢字コードの問題が生じてきます。
-
伝送の際には、テキストファイルであっても漢字コードを含む場合には、
ASCIIモードではなくBinaryモードで伝送しなければ、
正常に送ることができません。
- プログラムのソースコードを送る場合、 コメント文であっても日本語を含む場合には注意が必要です。
- UNIXでは一般的にいって、日本語のファイル名は使用できません。 正常にファイルとして認識できなくなることもありますので注意して下さい。
電子メールのヘッダでの文字化け
-
題名など、電子メールのヘッダ部分が文字化けすることがあります。
- 電子メールのヘッダは、MIMEという規格でエンコードされていますが、 全てのメールソフトがMIMEを復元(デコード)できる訳ではありません。
- 昔は、よくこういう問題が起こっていたため、 電子メールのタイトルは、 半角英数字で付けるというエチケットがありました。 Windowsの普及とともに、このエチケットも忘れ去られようとしていますが、 現在でも送信相手の受信環境への配慮は、忘れないようにしたいものです。
-
参考:
- 文字化けしたメールの修復 ( http://www.kanzaki.com/docs/)