文字コードのてすと
〜‖−¢£¬
例えば、上の文字列をはてなダイアリーに登録します。私が意図している文字列は厳密には (1) の並びです。いったん Windows のエディタでファイルを作成して、そこからコピー&ペーストで貼り付けることにします。ファイルの内容は (2) です。はてなダイアリーのエンコーディングは EUC-JP のようなので、ネット上は (3) の形式で送信されます。
さて、このエントリをはてな RSS で受信します。RSS のエンコーディングは UTF-8 のようなので、(4) を経由して (しないかもしれませんが)、(5) の形式で配信されます。でも、少し文字のフォントが先ほどと違うようです。RSS として受信したファイルを、エディタで シフトJIS として保存したところ、(6) のように文字化けが発生してしまいました。
ちなみに、(2) のファイルを直接 UTF-8 に変換して保存すると、(7) を経由して、(8) の形式で保存されます。
さて問題、日本語のファイルを UTF-8 で作成する場合、(5) の形式で作成するのが正しいでしょうか? (8) の形式で作成するのが正しいでしょうか?
エンコーディング | 〜 | ‖ | − | ¢ | £ | ¬ | 規格など | |
---|---|---|---|---|---|---|---|---|
(1) | 区点 | 1-33 | 1-34 | 1-61 | 1-81 | 1-82 | 2-44 | JIS X 0208 |
(2) | Windows-31J (Shift_JIS) |
8160 | 8161 | 817C | 8191 | 8192 | 81CA | |
(3) | EUC-JP | A1C1 | A1C2 | A1DD | A1F1 | A1F2 | A2CC | |
(4) | UTF-16 | 301C | 2016 | 2212 | 00A2 | 00A3 | 00AC | ISO/IEC 10646 JIS X 0221 |
(5) | UTF-8 | E3 80 9C | E2 80 96 | E2 88 92 | C2 A2 | C2 A3 | C2 AC | ISO/IEC 10646 JIS X 0221 |
(6) | Windows-31J (5) から変換 |
? | ? | ? | 8191 | 8192 | 81CA | |
(7) | UTF-16 (2) から変換 |
FF5E | 2225 | FF0D | FFE0 | FFE1 | FFE2 | |
(8) | UTF-8 (2) から変換 |
EF BD 9E | E2 88 A5 | EF BC 8D | EF BF A0 | EF BF A1 | EF BF A2 |