我有一份格式与XML格式非常接近的文档,我从外部源获得(我无法在源文件中修复它)。但是这个软件在某一点上是一个行业标准,所以它在我们的许多用户手中,并且替换这些系统可能会让我们的用户花费大笔资金。他们不会这样做。有时候这个文档是以完全格式化的XML格式出现的,但在某些情况下,文档在某些元素的InnerText
中有无效文本。一个这样的例子是<=>
。我在用户输入的文本字段中找到这些字段,并且在生成XML文档时源应用程序没有清理。将XML文档转换为XML
我有一个.net应用程序正在阅读此文档与XmlReader
对象。在大多数情况下它会成功,因为在大多数情况下,文档是有效的XML文档。但是,如果我得到一个不是XML文档的文档,它会引发异常,原因很明显。
有没有人知道在加载之前将此文档转换为XML的方式?或者有没有办法让XmlReader
更好地处理错误?阻止这个文档成为一个有效的XML文档的数据对我来说并不重要,而且可能会被抛弃。任何对我很重要的东西都被格式化为有效的XML。
您可以预处理文档,并在将文档馈送到XMLReader之前查找特定的无效序列并进行清理。 – 2014-09-10 16:05:47
问题是没有特定的模式。这是用户生成的数据,源系统只是在不清除它的情况下将其注入到XML中。 – Jesse 2014-09-10 16:37:26
我更新了问题以反映这个文档在技术上不是XML文档。虽然我觉得这是一个挑剔的选票。 – Jesse 2014-09-10 20:56:32