■メールと文字化け
電子メールの送信過程では「JISコード」が使用されている。 日本語メールシステムは、Shift-JISコードで書いたメール文を送信時にJISコード に変換して送り、 受信側ではJISコードで届いたメール文をShift-JISコードに逆変換して読むようになっています。 メールは、元々テキストしか送れないシステムで、しかも英語圏で生まれたシステムで 英語の使用が前提になっています。7ビット(2進数7桁)のASCII コードが前提となっています。 これでは日本語(2バイト)を含めて英語圏以外の人はメールが使えませんし、 英語圏の人でも画像やワープロなどのファイルを添付することはできません。 MIME(Multipurpose Internet Mail Extension)という仕様。 MIME(マイムと読みます)の仕様を一言で説明すると、あらゆるデータをテキスト(正確にいうと英語圏の人にとってのテキスト)、 7ビットのASCII コードに変換(エンコードといいます)して送信し、受信する側ではそれを 逆変換(デコードといいます)して元のデータに戻して読みます。 これがメールシステムの根本的な考え方で、日本語の本文のみのメールでも この仕様に基づいて送受信が行われます。 JISコードはこのような背景を持って、ASCII に準じて策定された7ビットコード体系になっているので、 メールの送信時の文字コードとして使われます。 日本語メールソフトはShift-JISコードで書いたメール文をJISコードにエンコードして送信するという 処理を行います。受信側ではJISコードで届いたメール文をShift-JISコードにデコードして読みます。 普段よく利用するファイルの添付とは、ファイルをテキスト化(7ビットコード化)する作業です。 この7ビット化の手順を規定したものが base64 という仕様で、受信側では 元のファイルにデコードすることになります。