私は以下のようにjavaコードを持っています。私の理解によれば、与えられたtest.xml
ファイルに親ノード<parent>
の子ノードの数を表示する必要があります。XML - Javaを使用して子ノードの数を取得する方法
try {
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.parse(new File("./test.xml"));
System.out.println(doc.getElementsByTagName("parent").item(0).getChildNodes().getLength());
} catch(Exception e) {
e.printStackTrace();
}
これは私のtest.xml
ファイルです。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<parent>
<sid>hello</sid>
</parent>
ここでは、このXMLで親ノードparent
の子ノードの数は1(すなわち、<sid>hello</sid>
)です。しかし、上記のスニペットは3として出力されます。誰かが私がここで何が起こっているか把握するのを助けてくれますか?私はJavaの初心者です。私はあなたの助けに感謝します。
は、各ノードの種類を調べ。すべての子ノードが要素ノードであるとは限りません。私は要素型の子ノードが1つしかないことがわかります。 – VGR
なぜ1の代わりに3を出力するのですか? 'parent'を含むすべてのノードを数えるスニペットですか? –