在文档错误

时间:2015-11-10 08:14:26

标签: xml xml-parsing

我有一个XML文件,在解析时会出现以下错误: 在文档错误的元素内容中找到了无效的XML字符(Unicode:0x0)。

我可以读完整个事情,也没有控制字符。

但是当我自己键入整个内容而不是提供给我的文件时,它工作得很好。

可能是什么问题。我在SO上阅读了一些类似的问题,他们都说这可能是一个编码问题。但任何人都可以详细说明这一点,因为我可以阅读整个事情。如果是编码问题我怎么知道通过查看文件,因为它看起来很好。它的可读性。我删除了一行并自行输入,该行正在被正确解析。

提前致谢

1 个答案:

答案 0 :(得分:3)

有两种可能的解释。该文件包含正确编码的Unicode代码点0x0的实例。 XML不允许使用此字符。

或者,解析器认为它看到了0x0的实例,因为它正在错误地解码文件的物理字节:也就是说,XML解析器假定的编码不是文件的实际编码。

当你处理这类问题时,你需要非常小心“我可以阅读整个文件”和“它看起来很好”之类的短语。你实际上无法看到磁盘上的位,你只能使用某种查看工具来解释它们,你需要清楚你正在使用什么工具以及它是如何配置的。