2
我想用jTidy漂亮地打印在我有的HTML代碼片段上。到目前爲止,我已經完成以下工作。jTidy - 沒有頭的漂亮打印,標題標籤
protected String prettyPrintHTML(String rawHTML) {
Tidy tidy = new Tidy();
tidy.setXHTML(true);
tidy.setIndentContent(true);
tidy.setPrintBodyOnly(true);
tidy.setTidyMark(false);
// Convert HTML to DOM
Document htmlDOM = tidy.parseDOM(new ByteArrayInputStream(rawHTML.getBytes()), null);
// Pretty Print
OutputStream out = new ByteArrayOutputStream();
tidy.pprint(htmlDOM, out);
return out.toString();
}
這工作,但輸出包括附加內容,比如HTML < >,<頭>,<標題>和<身體>標籤。
例如,對於輸入<UL> <利> SUB1 < /鋰> <利> SUB2 <UL> <利> sub21 < /鋰> </UL > < /鋰> </UL >這給出,
line 1 column 59 - Warning: inserting missing 'title' element
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
</title>
</head>
<body>
<ul>
<li>
sub1
</li>
<li>
sub2
<ul>
<li>
sub21
</li>
</ul>
</li>
</ul>
</body>
</html>
通過瀏覽API後,我fo和setPrintBodyOnly
方法(我已經在上面使用過),但仍然沒有運氣。
我在這裏錯過了什麼?我嘗試了谷歌搜索,但到目前爲止,所有的鏈接都導致死衚衕。