怎么辨别文本文档的编码?
1个回答
2022-11-14 · 百度认证:IT168官方账号,优质数码领域创作者
关注
展开全部
文本文档,有的带有BOM(ByteOrderMark,字节序标志),即0xEF,0xBB,0xBF,有的没有。
Windows下的txt文本编辑器在保存UTF-8格式的文本文档时会自动添加BOM到文件头。
在判断这类文档时,可以根据文档的前3个字节来进行判断。然而BOM不是必需的,而且也不是推荐的。
对不希望UTF-8文档带有BOM的程序会带来兼容性问题,例如Java编译器在编译带有BOM的UTF-8源文件时就会出错。
而且BOM去掉了UTF-8一个期望的特性,即是在文本全部是ASCII字符时UTF-8是和ASCII一致的,即UTF-8向下兼容ASCII。