【问题标题】:Java org.w3c.dom : is there a Java parser library?Java org.w3c.dom:有 Java 解析器库吗?
【发布时间】:2011-03-09 09:26:08
【问题描述】:

我有一个 DOM Document (org.w3c.dom) 但我需要能够通过 XPath 等找到元素。有哪个解析器或库可以提供此功能?

【问题讨论】:

    标签: java parsing dom


    【解决方案1】:

    http://download.oracle.com/javase/6/docs/api/javax/xml/xpath/package-summary.html

    页面末尾甚至有一个关于如何在 DOM 文档上使用 XPath 的示例:

    // parse the XML as a W3C Document
    DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
    Document document = builder.parse(new File("/widgets.xml"));
    
    XPath xpath = XPathFactory.newInstance().newXPath();
    String expression = "/widgets/widget";
    Node widgetNode = (Node) xpath.evaluate(expression, document, XPathConstants.NODE);
    

    【讨论】:

      【解决方案2】:

      如果您已经有Document,那么您不需要解析器,因为 XML 已经被解析了。

      javax.xml.xpath package 提供 XPath 功能。

      【讨论】:

        【解决方案3】:
        【解决方案4】:

        我首选的xpath 库是jaxen。它使用简单且功能强大。示例用法(延迟例外):

        List<Node> matchingNodes = new DOMXPath("//myxpath").selectNodes(document);
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-08-17
          • 2010-12-20
          • 2015-01-14
          • 2010-10-14
          • 2010-12-11
          • 2012-04-26
          • 1970-01-01
          相关资源
          最近更新 更多