2

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> 
4

1 に答える 1

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>

これがうまくいくかどうか教えてください。

于 2013-11-09T02:22:50.787 に答える