UnicodeとUTF-8は何が違うんですか?
問題
UnicodeとUTF-8は何が違うの?
答え
Unicodeは文字のコード体系。
「あ」は、U+3042 「ぁ」は、U+3043 「い」は、U+3044 …… 「送」は、U+9001 …… 「큐」は、U+D050 …… ……
世界中の文字が集められて、U+0000 から U+FFFFや、U+100000 から U+10FFFFなどのコードが振られている。
UTF-8、UTF-7、UTF-16、UTF-32、UTF-9などは、Unicodeのエンコード方式の一つ。
「あぁい送큐(U+3042 U+3043 U+3044 U+9001 U+D050)」を、それぞれでエンコードして、16進表示すると、
UTF-8
なんとなくなじんでいる1文字3バイトの風景
e3 81 82 e3 81 81 e3 81 84 e9 80 81 ed 81 90
UTF-7
base64エンコードが加わるので見た目はわけわかんない
2b 4d 45 49 77 51 54 42 45 6b 41 48 51 55 41 2d
UTF-16BE
U+~の通りで素直にみえて、ややこしい話もあり
30 42 30 41 30 44 90 01 d0 50
UTF-16LE
U+~の通りで素直にみえて、ややこしい話もあり
42 30 41 30 44 30 01 90 50 d0
コメント