私はJavaで単純なXMLパーサーに取り組んでいます。私は DocumentBuilderFactory を多くのソースでうまく使用してきましたが、新しいソースの 1 つは個々のノードのコレクションです。
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 オプションを使用する方法があるはずだと思いますが、それを行う方法がわかりません。
ありがとう!