我的问题是如何获取父节点的子节点。我这样做的原因是我有两个具有相同标签的元素
我想显示子节点的所有元素。我是XML解析的新手,所以我不太了解,我一直在使用DOM解析器。

我有以下xml文件

<Employees>
    <Employee id=12121>
        <Name> John </Name>
        <Profession> Programmer </Profession>
        <Age> 26 </Age>
    </Employee>
    <Employee id=121212>
        <Name> Jack </Name>
        <Profession> Analyst </Profession>
        <Profession> Team Lead </Profession>
        <Age/>
    </Employee>
    <Employee id=121241>
        <Name> Emma </Name>
        <Profession> Risk Analyst </Profession>
        <Age> 29 </Age>
    </Employee>
</Employees>


我想获取每个Employee节点的子节点列表

我已经在Java中尝试了以下代码

/*The code above simple creates a DOM Builder I havent included it in*/
NodeList nList = dc.getElementsByTagName("Employee");
for (int i=0; i<nList.getLength(); i++){
    Node nNode = nList.item(i);
    NodeList childNodeList = nNode.getChildNodes();


}


示例输出看起来像这样

John profession is Programmer and is aged 26
Jack profession is Analyst and  team lead
Emma profession is Risk Analyst and is aged 29

最佳答案

您的代码看起来不错,您有什么疑问?

试试这个,n1是NodeList

    for(int i=0;i<nl.getLength();i++){
        Node n=nl.item(i);
        if(n.getNodeType()==Node.ELEMENT_NODE){
           System.out.println(n.getNodeName()+"\t"+n.getTextContent());
        }
    }

09-10 03:59
查看更多