如何从XML内部获取带有XPath的文本,该文本在html页面中显示为文本?

时间:2013-11-15 23:07:14

标签: xml xpath

我的问题是,如果整个XML作为文本显示在html标记内,是否可以搜索XML节点? 为了更清楚,我将向您展示一个我想做的非常简单的例子。

<pre id='x'> 
 <a> 
<b> text1 </b> 
<c>      
<d> text2 </d> 
</c> 
<e> 
<f> text3 </f> 
<g> text4 </g> 
</e> 
</a> 
</pre>

整个XML位于<pre> html标记内。 是否可以获得任何这些节点(b,d,f,g)的文本?像'text1','text2'等?由于这是一个文本,我无法弄清楚如何使用xpath ... 如果可能的话,能帮助我吗?

2 个答案:

答案 0 :(得分:0)

试试这个,

import java.io.File;
import java.io.IOException;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;


public class testXML {

public static void main(String[] args) throws IOException {
    File input = new File("D:\\test.xml");
    Document doc = Jsoup.parse(input, "UTF-8");
System.out.println(doc.select("pre").select("d").text());
}

}

<强>输出: text2的

答案 1 :(得分:0)

如果您想要所有//pre[@id="x"]//*/text()个后代的文字内容,请

pre。如果您只想要//pre[@id="x"]//b/text()个内容,请b