我有 XHTML 文件,其来源不完全有效,它不遵循 XML 文档的 DTD。
就像在某些地方"
使用&Idquo;
for 或使用撇号一样’
。这会导致我的 C# 代码出现异常。
那么有什么方法或任何网络链接可以用来摆脱这个吗?
我有 XHTML 文件,其来源不完全有效,它不遵循 XML 文档的 DTD。
就像在某些地方"
使用&Idquo;
for 或使用撇号一样’
。这会导致我的 C# 代码出现异常。
那么有什么方法或任何网络链接可以用来摆脱这个吗?
如果文件格式正确,您可以在自己的 DTD 中定义字符实体。
如果文件格式不正确,CodePlex 的HTML Agility Pack将对其进行解析。
您可以将文档解析为 HTML,因为它们都以 DOM 结尾,而 HTML 解析器嘲笑这些三色堇引号问题。按照 unknown 的 HTML Tidy 想法,您可以将 DOM 序列化回有效的 XHTML 文件。(这与使用 HTML Tidy 相同,无论如何都可能使用 HTML 解析器,除非您以编程方式从 C# 中执行此操作。)
好吧,根据 XML 的性质,它必须是有效的,否则它根本不会呈现。我首先看看它使用 W3C 的验证器http://validator.w3.org/生成的错误类型
还可以考虑使用 HTML tidy,它也可以配置为修复 XML。
我们使用 hpricot 来修复我们的 XML,但我们又在构建 rails 应用程序。不确定C#