根据节点值获取Xml索引值

时间:2013-05-03 05:17:54

标签: java xml xml-parsing

XML OUTPUT

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
     <HelpListResponse>
         <HelpList>
    <id>16639505</id>
    <name>HelpList_Old</name>
    <details>HelpList/16639505</details>
    </HelpList>
    <HelpList>
    <id>16641505</id>
   <name>Investments to Watch</name>
    <details>HelpList/16641505</details>
    </HelpList>
    <HelpList>
    <id>16640505</id>
    <name>HelpList_New</name>
    <details>HelpList/16640505</details>
    </HelpList>
    </HelpListResponse>

用于XML解析的JAVA代码......

 xmlFile = new File("xmlFile.xml");
   DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
   DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
   Document doc = dBuilder.parse(xmlFile);

我正在解析上面的xml文档并将其存储在doc对象中。 例如,如果我需要从第一个索引检索名称值(即:“HelpList_Old”),那么我使用以下语句

doc.getElementsByTagName("name").item(0).getTextContent();
 => This helps me to print "HelpList_Old"

我需要几件事情,我不知道如何去做... 1)我需要根据xml的文本内容获取索引值。 (例如: - 如果我提供“HelpList_Old”,那么它应该返回index = 0,同样如果我想得到值“HelpList_New”的索引它应该返回2)

2)在同一行,如果我提供“HelpList_Old”,那么我想打印其相应的标签值,在本例中为“16639505”

如果我不清楚我的问题,请告诉我。 在此先感谢..

0 个答案:

没有答案