なんだか混乱することに 文字コード UTF-8 の BOM付きとBOMなし がある。
BOM付きが UTF-8 で
BOMなし が UTF-8N と表記で区別するそうだが、これは日本でのみ使われるとか、、
BOMとは先頭3文字 :16進数の「 EF BB BF 」
でも、ネット検索してみると、問題がありそうなのだがどうなのだろう。
Internet Explorerでは、 BOMのついていないUTF-8の文書を読み込むと(日本語版の場合)Shift_JISだと 誤認するとか、、
Microsoft Office Excel でも問題ありと書いているサイトもある。
逆に、php では BOMが付いていると問題が起こるという。
Ruby でも問題ありそうだし、、、
Unicodeの規格でもBOMは推奨していないそうだけど、どっちがいいのかよくわからん。
で、自分はBOM無で行こう。
ついでに、UTF-8 utf-8 utf8 正しくはどれ?
公式は “UTF-8” で、実際は大文字小文字は区別されずどちらでもいいと、、、
多いのは小文字らしい。yahoo も Google も そうだし。
でも、xml の書き出しは大文字が良いとか、、とどこかで目にしたような気がする。
ついでに、改行コードの問題
LF は UNIX系
CR+LF は Windows 系 CP/M MS-DOS OS/2もそうだったそうな、、
って、MS-DOS は 今の人たちは知らんだろうし、CP/Mにいたっては「何それ?」かもしれない。私がはるか昔、勤務先のコンピュータでデータを消してしまった時のOSがCP/Mだった・・・・
CR は MacOS Apple Ⅱ OS-9
FTPソフトでアップロードする場合は自動で転送先のOSに合わせた改行コードに変換してくれるようだけど、念のために転送前に確認したほうがよいかも。
さらに
文字コード覚書と思ったけど ここ 外部ファイルの文字コード指定