vs 把utf-8 的bom去掉;和手动去掉bom

时间:2021-02-02 09:10:21

1:用vs 读该notepad,把里面的字符串转为16进制,再用“20 20 20”把“EF BB BF"代替掉,再保持该notepad;”20 20 20“在notepad中是空格;如果需要把这空格去掉,就要再读取该notepad 的第一行,去掉最头的空格。

 

一个UTF-8文件可能有BOM,也可能没有BOM,那么怎么区分呢?三种方法。
1.用UltraEdit-32打开文件,切换到十六进制编辑模式,察看文件头部是否有EF BB BF。
2.用Dreamweaver打开,察看页面属性,看“包括Unicode签名BOM”前面是否有个勾。
3.用Windows的记事本打开,选择 “另存为”,看文件的默认编码是UTF-8还是ANSI,如果是ANSI则不带BOM。


解决方案是凡是被include的文件都保存为ANSI,主文件可以是UTF-8。要想把一个文件去掉 BOM,使用UlterEdit/xvi32打开, 切换到十六进制编辑模式,把最前面三个字节(就是那该死的 EF BB BF)替换为20,保存(注意关闭保存时自动备份的功能),再切换到默认编辑模式,把最前面的三个空格去掉就可以了。