和歌山のプログラミング・システム開発ならシステムキューブ
Windows10の今後のアップデートで、メモ帳で保存時のデフォルトの符号化方式がUTF-8、BOMなしという形式になります。
UTF-8は国際的な文字コードの規格Unicodeの符号化方式の一つで、従来までのメモ帳でUTF-8を扱う際はBOMありという形式でした。
BOMはバイトオーダーマークの略称で、このテキストUTF-8であることと、エンディアンを認識するために追加される先頭数バイトに付加される情報です。
エンディアンは複数バイトのデータを受け取る時に、バイトの並び順の解釈の方法です。
これまでのメモ帳を利用してUTF-8で保存するときは必ずBOMが先頭に保存される仕様でした。
BOMが付加されるとUTF-8とANSI方式の互換性が失われてしまうという問題がありました。
ANSI形式はアルファベットと数字、標準的な記号で構成され1バイトで表現されます。UTF-8は1バイトで表現できるものは1バイトのままで記述てでき、漢字を含めた多言語を扱う場合は複数バイトを利用して符号化できるのようになっています。
UTF-8はそのANSI形式との互換性があるために多言語での開発に活かされ、Webベースの開発ではデフォルトの符号化方式になっています。英語圏の開発者でもUTF-8を意識して作成しておけば、そのまま多言語対応のソフトウェアにすることができます。
BOMがつくことになると、データを受け取る側がBOMを解釈するという処理を必要とすることになり、その処理を持たないシステムでは文字データとしてうまく扱うことができません。
そのためWeb系での開発ではWindows標準のメモ帳を使わないというルールが設けられることもあるようです。
もともとUTF-8がありふれた形式ではなく、互換性に慎重にならざるを得ない状況で付加されたメモ帳の機能ですが、昨今のUTF-8の利用状況を鑑みてBOMなしが新しいメモ帳の標準の保存形式となるようです。