当我使用Visual Studio(2008和2010)创建新文本或XML文件时,它总是在文件的最开头包含三个奇怪的字节。除非您使用二进制编辑器,否则无法看到这三个字节。
为什么他们在那里,他们做了什么?
有没有办法阻止Visual Studio将它们放在那里?
目前我无法使用Visual Studio创建XML文件,因为这些字节搞砸了解析器。
答案 0 :(得分:5)
BOM 或Byte Order Mark当您使用其他编码保存文件时,通常会发生这种情况,特别是在 UTF-8 中解决它......
打开文件菜单>选择高级保存选项>然后选择 UTF-8无签名
答案 1 :(得分:2)
EF BB BF是Unicode Byte Order Mark(BOM) - 实质上,它声明该文件是UTF-8格式。
要永久删除此内容,您可以使用文件 - >高级保存选项,然后从编码下拉列表中选择“Unicode(UTF-8无签名) - 代码页65001”。 (它将显示在列表的相当远的位置。)
答案 2 :(得分:2)
这是一个utf8字节顺序标记
有关详细信息,请参阅here。它基本上声明它是一个utf8格式的文本文件。大多数文本编辑器都能识别它,因此知道如何理解文件的格式。
您的XML解析器是否已滚动?通过使用正确的BOM,我使用的所有生产级XML解析器都没有问题(实际上是积极的帮助)。
答案 3 :(得分:2)
对于VS 2010,您可以安装Fix File Encoding扩展名并设置\。(txt | xml)$ in选项以防止添加BOM。