Chapter 01

序章 メモ帳ショック!

zetamatta
zetamatta
2020.11.14に更新

Windows の標準テキストエディター「メモ帳」のデフォルトの文字コードが Byte Order Mark (通称BOM) なしの UTF8 になってしまいました。もう Linux派の人は大勝利の顔です。

ですが、これで Microsoft はパンドラの箱を開けてしまいました。もう確実にそのテキストファイルが UTF8 で書かれていることを保証する公式の情報がなくなってしまったのです。無論、実際問題として UTF8 と Shift-JIS※ の判別は Shift-JIS と EUC-JP よりも遥かに容易です。UTF8 は結構、正しいコードであることの範囲というのが狭いので、「正しい UTF8 コードか」のテストをすると、Shift-JIS はほぼ間違いなく「正しい UTF8 コードではない」となります。それゆえ「UTF8として正しい文字列であれば UTF8、そうでなければ、現在のコードページの文字コード」という安直な判定でも、だいたい大丈夫なんです(自分でテキストファイルページャを作ってみた経験からすると)

※ 本当はCP932だが、わからん人もいるので、敢えてShiftJISと書きます

ただ、99% でも許されないのが B2B(その割によく大障害でてますけど)。100% でない限りは文字化けのリスクを考慮しなくてはいけません。設定ファイルをユーザに直接編集させるべきではない、UTF8で書くことが強制されてる UTF8 でいいじゃん等、各社それなりの対応をはかったり、はかってなかったりすると思います。たいへんだなぁ(無責任な立場でよかった!)

さて、ここで出てきた ByteOrderMark とは、そもそも何なんでしょうか?
そこからかよ!
はい、そこから始めます。