从Document.html()写出来时,jsoup textarea格式发生了变化

时间:2013-11-09 01:20:29

标签: html textarea jsoup

我使用jsoup.parse()加载一个html文档。我只想修改文档中的url引用然后写出来。不幸的是,文档中的文本区域也正在被修改。如何仅使用我的更改而不进行其他更改来写出修改后的文档?目前正在写出doc.html()。

<textarea class="code_input" id="textareaCode" wrap="logical" rows="10" cols="50">
<!DOCTYPE html>
<html>
<head>
<script>
</script>
</head>
</textarea>

<textarea class="code_input" id="textareaCode" wrap="logical" rows="10" cols="50">&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
&lt;script&gt;
&lt;/script&gt;
&lt;/head&gt;
&lt;/html&gt;
</textarea> 

1 个答案:

答案 0 :(得分:0)

我想我明白你的意思。您希望取消<textarea>内部的html实体,以便将它们保留为正确的标记。

查看Parser.unescapeEntities()函数(参见Jsoup docs)。

使用示例html的示例:

Document doc = Jsoup.parse(html);
String s = Parser.unescapeEntities(doc.html(), true);
System.out.println(s);

将打印出来:

<textarea class="code_input" id="textareaCode" wrap="logical" rows="10" cols="50">
   <!DOCTYPE html>
   <html>
   <head>
   <script>
   </script>
   </head>
</textarea>

请告诉我这是否适合您。