UTF8 と UTF8N の違い
UTF8: BOM (Byte Order Mark)付き
UTF8N: BOM なし
BOMとはUnicodeのエンディアンを示すものでテキスト・ファイルの先頭に置かれている。
また、同時にテキスト・ファイルがUnicodeかどうかの判別にも使われることもある。
中身は、
U+FEFF である。
これが、次のような形式の違いで、エンディアンを区別している。
FE FF: ビッグエンディアン(UTF-16)
FF FE: リトルエンディアン(UTF-16)
00 00 FE FF: ビッグエンディアン(UTF-32)
FE FF 00 00: リトルエンディアン(UTF-32)
UTF-8の場合、エンディアンが関係ないので必要ないが付いているものがある。
この場合、UTF-8 の BOM は
EF BB BF
UTF-8Nで保存すると、アプリケーションによっては、文字化けしたり読めないことがあるので、その場合は、UTF-8で保存しなおすといい。
また、逆に BOM がない UTF-8
で正しく動くアプリケーションもある。
<参考URL>
BOMとは 【Byte
OrderMark】-意味・解説 : IT用語辞典 e-Words
最終更新:2006年12月22日 19:48