XML文書に「person」要素が含まれているかどうかを確認したいのですが、すべてのXMLノード世代をJava DOMで反復する
NodeList nodeList = root.getChildNodes();
for(int i=0; i<nodeList.getLength(); i++){
Node childNode = nodeList.item(i);
if (childNode.getNodeName() == "person") {
//do something with it
}
}
をそして、私はサブ要素に行くために複数のループを追加することができますが、私はどのように遠くに決定することで入れてどのように多くのネストされたループを知っている必要があります:私は非常に単純にすべての第一世代の要素を確認することができますドリルする文書。私は10個のループを入れ子にして、与えられた文書の12個の要素を入れ子にしたperson要素で終わることができます。私はそれがどれほど深く入れ子になっていても要素を引き出すことができる必要があります。
文書全体から要素を収穫する方法はありますか?同様に、すべてのタグのテキスト値を配列として返すか、それを繰り返しますか?
おそらく、PythonのElementTreeの 'のfindAll' メソッドに似て何か:mmyers状態として
for person in tree.findall('//person'):
personlist.append(person)
私はあなたが必要だと思うhttp://en.wikipedia.org/wiki/Recursion_%28computer_science %29。 –