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



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

我能很好地阅读整件事,也没有控制字符。

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

可能是什么问题。我读了一些关于SO的类似问题,他们都说这可能是编码问题。但是,有人能详细说明这一点吗?因为我可以阅读整件事。如果是编码问题,我怎么能通过查看文件来知道,因为它看起来很好。它可读。我删除了一行,然后自己键入,这行就被正确解析了。

提前感谢

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

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

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

最新更新