UTF-8とUTF-8Nの違い

| コメント(0) | トラックバック(0)

何気に見過ごしていたこの2つですが、どちらもUTF-8には間違いないのですが、UTF-8には、BOMがあり、UTF-8Nにはありません。

BOMとは、このファイルの形式を表すコードでファイルの先頭に付きます。UTF-8の場合、先頭に、EF BB BF (16進)のコードが付加されます。

リダイレクトでうまく動かなかったのは、header()でヘッダを出力する前に、この3バイトが出力されてしまったからです。

このコードは要る時と要らないときがあって、少なくともWebの世界では要りません。なので、UTF-8Nでファイルを保存する必要があります。また、これが無いと動かないソフト等もあるみたいです。

UTF-8 Wikipedia

今さらながらにこの違いがわかりました。

通常、Web系のソフトでUTF-8というと、UTF-8Nのことを指すそうです。


そう言えば、TOPページのヘッダ画像の上に妙な空白がありました。

karakuriya_mae.png

よくよく見てみると、この部分のMTのテンプレートがUTF-8になってました。それで余計なコードは出力さてたのです。
これをUTF-8Nに直して再構築したところ

karakuriya_ato.png

となり、余計な空白は消えました。

以前はEUCだったのをUTF-8に変更した際、漢字コードの変換ソフトで一括変換した時に、UTF-8NではなくUTF-8になってしまってたのでしょう。
ややこしい・・・

トラックバック(0)

トラックバックURL: http://www.karakuriya.biz/mt/mt-tb.cgi/715

コメントする

ウェブページ

Powered by Movable Type 4.261

このブログ記事について

このページは、H.Imaiが2008年7月15日 11:51に書いたブログ記事です。

ひとつ前のブログ記事は「Cannot modify header information」です。

次のブログ記事は「片町、呉服町近辺のコインパーキング」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。