Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 检索节点元素';基于属性的s值_Java_Xml_Dom_Xml Parsing - Fatal编程技术网

Java 检索节点元素';基于属性的s值

Java 检索节点元素';基于属性的s值,java,xml,dom,xml-parsing,Java,Xml,Dom,Xml Parsing,如何使用dom和xml解析基于属性名检索节点元素的值 <ROOT> <A> <aa name="xyz">k,l,m </aa> <aa name="pqr">a,b,h </aa> <aa name="abc">s,t,r </aa> ... </A> <B> <b

如何使用dom和xml解析基于属性名检索节点元素的值

<ROOT>
    <A>
        <aa name="xyz">k,l,m </aa>
        <aa name="pqr">a,b,h </aa>
        <aa name="abc">s,t,r </aa>
         ...
    </A>
    <B>
        <bb name="t1">r,st,t</bb>
        ...
    </B>
</ROOT>    

k、 l,m
a、 b,h
s、 t,r
...
r、 圣彼得堡
...
。。。 已尝试的实现片段:

NodeList nodeList = <xmlDoc>.getElementsByTagName("aa");

        for (int i = 0; i < nodeList.getLength(); i++)
        {
            Node node = nodeList.item(i);

            if (node.getNodeType() == Node.ELEMENT_NODE)
            {
                Element element = (Element) node;

                System.out.println(element.getTextContent()); 
NodeList NodeList=.getElementsByTagName(“aa”);
for(int i=0;i
//?getNodeValue()/?如何通过传递属性名作为匹配条件来获取


//f.e:如何为节点
aa
打印
a、b、h
,属性名为
pqr

对于属性,它将是:
element.getAttribute(“name”);

如果要按属性搜索,则

            XPath xpath = XPathFactory.newInstance().newXPath();
            NodeList nl = (NodeList)xpath.compile("//aa[@name='pqr']").evaluate(doc, XPathConstants.NODESET);

//Rest of the code same
*请根据您的需要更改xpath。我并没有亲自运行它,但您知道了