【问题标题】:Howto iterate through XML by node/element names如何通过节点/元素名称遍历 XML
【发布时间】:2017-06-28 23:01:28
【问题描述】:

有没有一种方法可以通过它们的名称迭代节点/元素,如下所示:

<rootnode>
  <foo>
    <bar>
      stuff
    </bar>
 ....


document.getDocumentElement.getElement("foo").getElement("bar").getValue();

【问题讨论】:

  • 你知道 XPath 吗?它适合您的用例吗?

标签: java xml dom sax


【解决方案1】:

我认为XPath 应该可以解决问题。

如果您已经将文档解析为org.w3c.dom.Document

String expression = "/rootnode/foo/bar";
NodeList nodeList = (NodeList)   xPath.compile(expression).evaluate(document, XPathConstants.NODESET);
for (int i = 0; i < nodeList.getLength(); i++) {
    System.out.println(nodeList.item(i).getFirstChild().getNodeValue()); 
}

【讨论】:

  • 嗯,xPath 可能是一个选项.. 试试看
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-07-20
  • 1970-01-01
  • 2012-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多