メールの文字化けを防ぐには?

米国の友人から私が送ったメールが文字化けすると言われました。エンコードが原因のようですが、エンコードとは何でしょうか。また、文字化けを防ぐ方法はありますか。

あるデータをコンピューターが扱える記号の列に置き換える作業を、エンコードといいます。電子メールで日本語の文章や添付ファイルを送る際も、データをエンコードします。文字化けは、送信側と受信側で対応しているエンコード方法(文字コード)が異なる場合によく発生します。

 電子メールでは、漢字やひらがななどの日本語を送信側、受信側が異なるコンピューター環境を使っていてもうまくやりとりできるように、メッセージの作成に使用した文字コードをメールのヘッダーという部分に記録しています(下図)。JIS、EUC、シフトJISなど複数の種類がある文字コードのうち、インターネットメールではISO-2022-JP(「Outlook Express 6」ではJISと表記)を使うケースが多いようです。

●文字コードの確認方法
「受信トレイ」で受信したメールを選び、右クリック。表示されたメニューから「プロパティ」を選ぶ。「詳細」タブでは受信したメールのヘッダーを表示できる
この中の「Content-Type:」欄の「charset」の右側に書かれているのが文字コードだ

 なお、受信直後に文字化けが起きていても、メールソフトで表示に使う文字コードを切り替えれば正常に表示できることがほとんどです。Outlook Express 6では、この文字コードの切り替えを「エンコード」というメニューで行います。「受信トレイ」で文字化けしているメールを選択し、「表示」メニューから「エンコード」→「自動認識」を選んでください。これで文字化けは解消するはずです。

 なお、Outlook Express 6が送信時に使う文字コードは「メッセージの作成」画面で「書式」→「エンコード」で確認できます。「日本語(JIS)」が選ばれているはずです。通常はこのままで問題なく送受信できます。

 このほか、インターネット上をメールのデータが運ばれてくる過程で、何らかの理由でデータの一部が欠けてしまうことがあります。こうなるとメッセージを元通り復元することができなくなってしまうため、やはり文字化けが発生します。

 欠けたデータを補えば復元できますが、受信側で直すのはなかなか大変です。再度、メールを送り直してもらうなどして対応した方がよいでしょう。

 もう一つ文字化けのように見えることがあるのが、HTML形式のメールです。正確には文字化けではないのですが、データがうまく処理されずにHTMLファイル内に書かれている本文以外の文字列(タグなど)も表示されたことで、通常のテキストとは違う形に見えることがあります。

 この場合は、送信するメールをテキスト形式にすれば問題の発生を防げます。Outlook Express 6はメール作成時の初期設定がHTML形式になっています。テキスト形式を標準に設定しておきましょう

●テキスト形式を標準に設定
Outlook Express 6の画面で「ツール」→「オプション」で表示されるウインドウで「送信」タブを選び、「テキスト送信の形式」で「テキスト形式」を選択する