我正在使用 Java 开发一个简单的 XML 解析器。我一直在成功使用 DocumentBuilderFactory 与许多来源,但我的一个新来源是单个节点的集合。
file.xml 如下所示:
<XML Version....>
<!DOCTYPE...>
<main_document_node>
.....others....
</main_document_node>
<XML Version....>
<!DOCTYPE...>
<main_document_node>
.....others....
</main_document_node>
我一直在使用这样的命令:
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
Document d = dbf.newDocumentBuilder().parse(/path/file.xml);
但这似乎不适用于多个父节点。有没有比制作一个我写 main_document_node 的临时工作文件更简单的方法?该伪代码将是
new Writer temp.xml
new Reader file.xml
while not at the end of file.xml
read/write first main_document_node to temp
parse temp.xml
我认为应该有一种方法可以使用 DocumentBuilderFactory 的 inputsource/stream 选项,但我不确定如何去做。
谢谢!