我有一个大的XML文件(~18MB).显然,其中有一个标签没有关闭.我知道这是因为当我运行W3C标记验证工具(validator.w3.org)时,我收到以下错误:
You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".
我的问题是如何在文件中的500,000行中找到这个缺失的封闭元素.是否有一个我可以使用的工具可以建议可能存在问题的地方 - 比如在一定数量的线后没有关闭的元素?
任何想法将不胜感激.
我使用Notepad ++,它有一个优秀的XML Tools插件,可以让你检查XML语法并带你到有问题的界限.它还有有用的实用程序.

最简单的方法是使用 libxml 附带的 xmllint 程序。--valid 选项打开作为输入给出的文件的验证。例如,以下内容验证 XML 1.0 规范第一修订版的副本:
xmllint --valid --noout test/valid/REC-xml-19980210.xml
Run Code Online (Sandbox Code Playgroud)
--noout 用于禁用结果树的输出。
--dtdvalid dtd 允许根据给定的 DTD 验证文档。
Libxml2 导出一个 API 来处理 DTD 和验证,请检查相关描述。
如果您的文档打印得不够“漂亮”,那么仍然很难找到有问题的节点,因此您可能需要使用 xmllint 重写要缩进的文件。
| 归档时间: |
|
| 查看次数: |
13560 次 |
| 最近记录: |