阻止Jsoup编码

时间:2011-06-08 12:59:20

标签: java jsoup

我正在尝试使用包含以下文本的JSoup来填充URL:Ætterni。 解析文档后,相同的字符串如下所示:Ætterni

如何防止此表单发生?我希望文档1:1与它完全一样。

代码:

doc = Jsoup.connect(url).get();
String docEncoding=doc.outputSettings().charset().name();
OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(localLink),docEncoding);
writer.write(doc.html());
writer.close();

2 个答案:

答案 0 :(得分:5)

使用     doc.outputSettings().escapeMode(EscapeMode.xhtml); 避免实体转换。

答案 1 :(得分:2)

你似乎没有以任何方式利用Jsoup的力量。我只是使用java.net.URL流式传输HTML plain。这样您就可以获得1:1的响应副本。

InputStream input = new URL(url).openStream();
OutputStream output = new FileOutputStream(localLink);
// Now copy input to output the usual Java IO way.

您应该使用Reader / Writer,因为这可能会使未知编码中的来源字符出错,因为将使用平台默认编码。< / p>