在文档错误的元素内容中发现无效的XML字符(Unicode:0x0)

在文档错误的元素内容中发现无效的XML字符(Unicode:0x0),xml,xml-parsing,Xml,Xml Parsing,我有一个XML文件,解析时出现以下错误: 在文档错误的元素内容中发现无效的XML字符(Unicode:0x0) 我可以很好地阅读整个内容,而且也没有控制字符 但是,当我自己输入整个内容而不是提供给我的文件时,效果很好 可能是什么问题。我读了一些类似的问题,他们都说这可能是一个编码问题。但有谁能详细解释一下,因为我能看懂整件事。如果是编码问题,我如何通过查看文件知道,因为它看起来很好。它是可读的。我删除一行并自己键入,该行被正确解析 提前感谢有两种可能的解释。该文件包含正确编码的Unicode代码

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

我可以很好地阅读整个内容,而且也没有控制字符

但是,当我自己输入整个内容而不是提供给我的文件时,效果很好

可能是什么问题。我读了一些类似的问题,他们都说这可能是一个编码问题。但有谁能详细解释一下,因为我能看懂整件事。如果是编码问题,我如何通过查看文件知道,因为它看起来很好。它是可读的。我删除一行并自己键入,该行被正确解析


提前感谢

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

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


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

请原谅我在这个问题上的语言,我只是想让它更容易理解,仅此而已。我认为解析器和实际编码不匹配。但我希望有一种方法能让我更容易发现。不是因为解析器告诉我它不能解析,然后我猜这是编码问题。重新编写整个内容好的,第一步是在十六进制编辑器中查看二进制级别的文件。快速浏览一下这一点将大大缩小需要调查的可能原因的范围。