使用许多技术解析和遍历HTML4文件的方法有很多种。但是我找不到合适的来将该DOM再次保存到文件中。
我希望能够将HTML文件加载到DOM中,更改一个小东西(例如属性的值),再次将DOM保存到文件中,并在分析源文件和创建的文件时,希望他们完全相同,除了那个微小的改变。
使用XML和合适的XML库时,这种任务绝对没有问题,但是当谈到HTML时,有几个问题:诸如缩进或换行符之类的空格丢失或插入,自动关闭的开始标记(如当<link...>
)显示为<link.../>
和/或CDATA部分的内容(例如<script>
和</script>
之间)被包含在<![CDATA[
]]>
中。这些事情在我的案例中至关重要。
在没有上述缺点的情况下,我可以通过哪种方式加载,遍历,操作和保存HTML,最重要的是没有要更改的空白文本节点?