Xpath以String形式读取标签和属性

时间:2014-06-09 14:37:10

标签: xpath dom4j

我有以下xml内容,我想在ref中将所有内容读作dom4j api中的xpath一个字符串,基本上 我想要

<list>
  <ref id="R1">
    <citation type="book">
      <name>John</name>
      <title>News</title>
    </citation>
  </ref>
  <ref id="R2">
    <citation type="journal">
      <name>Jane</name>
      <title>Finance</title>
    </citation>
  </ref>
</list>

以包括标签和属性

的原始字符串输出
<citation type="book"> <name>John</name><title>News</title></citation> 
<citation type="journal"> <name>Jane</name><title>Finance</title></citation>

我的代码是

org.dom4j.Document doc = DomReader.parse("test.xml");
List<Node> nodes = doc.selectNodes("/list/ref" );
for (Node node : nodes)
{
    System.out.println( node.getStringValue());
}

上面的代码只给了我John,News,Jane,Finance的价值观。

但我希望包括整件事。

1 个答案:

答案 0 :(得分:0)

.getStringValue()方法定义为返回XPath&#34;字符串值&#34;节点,对于一个元素,它表示所有后代文本节点的串联。对于节点的XML表示,您需要使用.asXML() method代替。

相关问题