■はじめに
コンピュータは人間ではないので、文字が分かりませんね。コンピュータが文字を理解するには「文字と番号の対応表」が必要です。この対応表を文字集合(キャラクターセット)といいます。日本語用の集合、ドイツ語用の集合…など
があり、日本語を扱うならJISX0208、JISX0213、UNICODEといった文字集合を使います。さて、これら文字集合により字のコードは認識できますが
(あ=3042のように)コンピュータは0と1しか処理できないので文字を認識できるように符号化する必要があります。これを符号化方式(エンコード方式)といい、iso-2022-jpやUTF-8、Shift_JISなどがあります。ソフトウェアによって
どの符号化方式を使うかは異なりますが、メーラーが採用する日本語用のエンコード方式の1つにiso-2022-jp(俗にJISコード)があります。
つまり文字のやりとりには「文字集合(CSS)」と「符号化方式(CSE)」が必要です(詳しく→
CSSとCSEって?)
■ ISO-2022-jpとは?
前述の通りインターネット上(特に電子メール)などで使われる日本語用の符号化方式(エンコード方式)です(俗にJISコード)
例えばOutlookの優先エンコード(CSE)の初期値はJIS(iso-2022-jp)です。
■
ISO-2022-jp対応の文字集合(キャラクターセット)
最も安定しているJISX0208、JIS X 0211制御文字、JIS X
0201のラテン文字集合(半角カナは含まれていない)、ISO 646の国際基準版図形文字などがあります。
(※ JISX0213を扱うエンコード方式はISO-2022-jp-2004です)
■
JISX0201の半角カナ、JISX0212(補助漢字)には対応していない
JISX0201の半角カナ部分、JISX0212(補助漢字)には対応していないので、これらの文字集合に含まれる字を使うと文字化けする可能性も
あります。
(符号化方式名をISO-2022-JPとしているのに、文字集合としてJIS
X 0212(補助漢字)やJIS X
0201の片仮名文字集合(いわゆる半角カナ)をも符号化しているシステムもあるが、ISO-2022-JPではこれらの文字を許容していない
。システムが化けないよう、気をきかせて対応している。例えばOutlook2016で半角カナを入力し、エンコードとして日本語JIS
1バイトカタカナ可を選択して送信すると、半角カナのまま送れる。ヘッダー情報はiso-2022-jpである(が、本来iso-2022-jpは半角カナをサポートしていない)
■
最近のシステムは文字化けにうまく対応できる
例えば、昔のメーラーではJIS(iso-2022-jp)で送信すると補助漢字や機種依存文字が文字化けしていました。また、例えば海外(ドイツや中韓、アラビア等)から来たメールを転送した際は元エンコードを引き継ぐため文字化けを起こすことがありました。→
受信メールのエンコード方式に対し、入力する文字の文字集合が対応していない。(例えばUS-ASCIIで海外からきたメールに日本語を入力して転送すると文字化けを起こす=US-ASCIIはJISX0208に対応していない)
しかし現在では文字化けを回避するため、メールシステムがメッセージ内の文字を検証し、その文字集合(CSS)にあったエンコード方式(CSE)を自動で選んで送るため、文字化けすることが少なくなりました。Outlookでも機種依存文字が入力されていればUTF-8で送られるため、正常表示できます(機種依存文字がUNICODE(Utf-8のCSS)に含まれている)
★注!これらはメーラーの設定によります。例えばOutlookは「オプション」→「詳細設定」−「文字設定オプション」にある「送信メッセージのエンコード方式を自動選択する」にチェックが入っている必要があります。
|