タグ

BOMに関するmsuharaのブックマーク (3)

  • BOM付きUTF-8による空白行:逆襲のニート

    ニートというのはダメな人じゃない。 ノーワークおじさんなのだ。 人間やればできる。 誰でも可能性の宝庫なのだ。 PHPスクリプトファイルをUTF-8で保存したら、InternetExplorer6.0で表示させた時に、ブラウザ画面の一番上が1行分空白になった。 謎の空白行だ。 空白の原因は、「BOM」付きのUTF-8という文字コードを使っていたことだった。 「BOM」無しのUTF-8Nという文字コードに変更したところ、この空白は解消された。 めでたし、めでたし。 BOM(Byte Order Mark) UnicodeのUTF-16など16ビット幅のエンコーディング方式において、エンディアンを指定するためにファイルの先頭に記入される16ビットの値。 エンディアンが関係ないUTF-8などの文書でも先頭にBOMがついている場合がある。 エンディアン(endian) 2バイト以上のデータ量を持つ

    msuhara
    msuhara 2012/07/19
    DOCTYPEスイッチが効かない場合に疑うこと。
  • JavaSE BOM付きUTF8ファイルを読み込むとどうなるか? - @//メモ

    Javaで、UTF-8文書を扱う場合の BOM † Javaでは、UTF-8といったら、BOMなしのUTF-8 を想定しているようだ いろいろ議論はあるけれど、後方互換性の問題から対処するつもりはなさそうだ Bug ID 4508058 : UTF-8 encoding does not recognize initial BOM Bug ID 4740482 : Does not parse UTF-8 XML with UTF-8 marker byte Bug ID 6206835 : Byte Order Mark not supported by default SaxParser Bug ID 6378911 : UTF-8 decoder handling of byte-order mark has changed 個人的には、US-ASCII との前方互換性を満たすために

  • BOM - Tips for Programing

    PHPを中心に、あれなんだっけ?的なつい忘れてしまうことや、これ、覚えておく必要がありそうなこと、こんなやり方があったんだとか、まとめておこうとおもって。 Byte Order Marker。 unicodeのファイルには、2種類ある。ファイルの先頭数バイトにBOMというコードが登録される。 BOMはテキストエディタでは見えないが、保存するときに指定可能なものがある。 また、指定不可能なものは、新規作成時点でBOM付きかBOM無しかを把握しておく必要がある。   プログラム作成において、最近は、UTF-8を内部エンコードとしているOSや言語があるので、作成時点で言語がどちらに対応、非対応の確認が必要となる。 phpでは、BOM無しでなければならない。BOMありの場合は、<?phpの前に存在することとなるため、文字列出力が行われていることになるので注意が必要だ。header関数や、sessi

  • 1