BOM

BOM
BOM(byte-order mark),即字节顺序标记,由Microsoft建议,插入到以UTF-8、UTF16或UTF-32编码Unicode文件开头的特殊标记,用来识别Unicode文件的编码类型。Microsoft 建议所有的 Unicode 文件应该以 ZERO WIDTH NOBREAK SPACE(U+FEFF)字符开头。对于UTF-8来说,BOM并不是必须的,因为BOM用来标记多字节编码文件的编码类型和字节顺序(big-endian或little- endian)。Linux/UNIX 并没有使用 BOM,因为它会破坏现有的 ASCII 文件的语法约定。
不同编码所对应的BOM如下:
BOM Encoding
EF BB BF UTF-8
FE FF UTF-16 (big-endian)
FF FE UTF-16 (little-endian)
00 00 FE FF UTF-32 (big-endian)
FF FE 00 00 UTF-32 (little-endian)
UTF-8中的BOM编码在一些编辑器或者是浏览器中支持不好,可能会出现问题,比如将EFBB BFEF BBBF显示为“锘匡豢”,解决办法是去掉文件头的BOM编码。

UTF-8
一般使用UTF-8格式保存文件,这样大多数的浏览器、编辑器均能正确识别文件里的各国文字,个别环境默认如果是以ansii格式保存汉字,会导致在某些浏览器、编辑显示乱码。UTF-8格式分两种,即有无BOM标识。

标签:

发表评论

电子邮件地址不会被公开。 必填项已用*标注