我收到非常大的xml文件,需要进行点编辑(在特定节点添加元素)。文件大小使得使用DOMDocument或SimpleXML不是一个选项。我正在使用XMLReader来解析文件,但似乎我唯一的选择是使用XMLWriter完全重写文件。我很好奇是否有更好的方法?也许某些东西可以让我在XMLReader的光标位置编辑文件?
理想情况下,我会使用PHP动态执行此操作,但如果有一个工具可以使这项工作更有效,我可以使用C#进行一次性工作以启动并运行。
答案 0 :(得分:1)
如果可以使用XSLT表达编辑,我建议这样做,因为XSLT解析器优化了查询,并且在大多数情况下对文件执行单次运行...
XSLT是一种语言(用XML表示),用于描述如何将XML文档重写为另一种XML文档。大多数XSLT解析器都经过高度优化(在时间,内存和磁盘使用方面)。