2016-05-19 163 views
3

场景:我使用Apache TikaDOCX文件获得XHTML。我需要解析此XHTML以在特定标记(例如div或p标记)之间获取文本。为此,我使用Jsoup在标签之间获取文本。JSoup-在标签之间获取文本

问题:本来XHTML有这样的文字:

some text [tab-space][tab-space] other text. 

但随着Jsoup我得到这个:

some text other text. 

所以标签空间失踪,但我需要获取文本因为它包括tag-spaces。是否有可能使用Jsoup或者是否有其他Java库这样做?

回答

5

使用getWholeText方法TextNodes:https://jsoup.org/apidocs/org/jsoup/nodes/TextNode.html#getWholeText--

final Document doc = Jsoup.parse(new File(".\\source.xhtml"), "UTF-8"); 

for (Element result : doc.select("div")) { 
    final String text = ((TextNode) result.childNode(0)).getWholeText(); 
    System.out.println(text); 
} 
+0

感谢....它的工作原理正是我想要的:-) –