<parent>
  <child1>FIN </child1>
  <child2>Age 13</child2>
  <child3>Chennai</child3>
</parent>
<parent>
  <child1>FRE</child1>
  <child2>Age 15</child2>
  <child3>Delhi</child3>
</parent>


这是我正在使用的XML。如果我的child1节点在Java代码中匹配,则需要获取一个值child3节点。如果FIN匹配,则需要获取child3“ Chennai”的值。我正在使用DoumentBuilderFactory读取XML。
帮助我解决此logic.looking的Java编码。

for( int i = 0; i< PatientVariables.length; i++){
  // loop the staff child node
  NodeList patientlist = PatientVariables[i].getChildNodes();

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

最佳答案

如果您的完整XML看起来像这样(请注意,为简单起见,我添加了root元素并删除了FIN之后的空格)

<root>
       <parent>
       <child1>FIN</child1>
       <child2>Age 13</child2>
       <child3>Chennai</child3>
       </parent>
       <parent>
       <child1>FRE</child1>
       <child2>Age 15</child2>
       <child3>Delhi</child3>
       </parent>
</root>


您可以通过xpath找到要查找的元素:
//parent/child1[text()='FIN']/following-sibling::child3

08-06 12:03