是否有用于修复大型(> 200MB)格式错误(缺少封闭式标签,不匹配的引号,非转义字符,不可打印字符等)xml文件的库?任何编程语言的库都可以。我发现PHP Tidy仅适用于小文件,因为它将整个文件读入内存。
答案 0 :(得分:1)
Tidy可以使用-asxhtml
或-asxml
标志来做到这一点:
tidy -asxhtml input.xml output.xml
它还具有令人印象深刻的输出缩进功能(默认情况下,它不会产生非常漂亮的效果)。
答案 1 :(得分:0)
Notepad ++包含HTMLTidy;它可以配置为修复XML,但您应该准备好截断/删除/或重新定位元素值;从而打破了XML文档本身的语义布局。
在任何情况下,使用Notepad ++手动修复XML都很有用,因为您可以使用折叠/展开工具和缩进来跟踪正常工作的XML节点,并完成整个文件直到修复完成
如果您的文件有XML架构,则可以修复该文件,然后根据该架构对其进行验证,以查找已移动的节点,如果很少有人可以手动修复它们。
在任何情况下,都没有我知道的修复/修复工具,无需大量人工操作即可为您完成此任务。
答案 2 :(得分:0)
HTML可以帮助您整洁:
tidy -xml input.file output.file
只要了解整洁并不能创造奇迹,只需尝试将其重建为有效的XML文件即可。考虑到您可能正在丢失数据。