1

JSoup 似乎在我的输出中添加了额外的 br 标签,如下所示。有没有办法阻止这种情况发生?

JUnit 测试:

@Test
public void testJsoup () throws MLException {
    String htmlBody = "<body> <div> <br class='calibre1'></br> <br class='calibre1'></br></div> </body>"; 
    Document doc = Jsoup.parse(htmlBody);
    htmlBody = doc.select("body").first().toString();
    System.out.println(htmlBody);
}

控制台输出:

<body> 
 <div> 
   <br class="calibre1" />
   <br /> 
   <br class="calibre1" />
   <br />
 </div> 
</body>

问候,丹尼

4

1 回答 1

2

我在这里没有看到任何额外的<br />-Tags ......你的意思是换行吗?
如果是,请看这里:jsoup line feed

你可以做的是prettyPrint关闭:

final String html = "<body> <div> <br class='calibre1'></br> <br class='calibre1'></br></div> </body>";

Document doc = Jsoup.parse(html);

// This line will keep your Html in one line
doc.outputSettings().prettyPrint(false);

System.out.println(doc.body());

输出:

<body> <div> <br class="calibre1" /><br /> <br class="calibre1" /><br /></div> </body>
于 2012-10-24T19:05:09.353 回答