【发布时间】:2011-12-03 22:38:41
【问题描述】:
我正在使用 JSoup 解析来自 http://www.latijnengrieks.com/vertaling.php?id=5368 的内容。这是第三方网站,没有指定正确的编码。我正在使用以下代码来加载数据:
public class Loader {
public static void main(String[] args){
String url = "http://www.latijnengrieks.com/vertaling.php?id=5368";
Document doc;
try {
doc = Jsoup.connect(url).timeout(5000).get();
Element content = doc.select("div.kader").first();
Element contenttableElement = content.getElementsByClass("kopje").first().parent().parent();
String contenttext = content.html();
String tabletext = contenttableElement.html();
contenttext = Jsoup.parse(contenttext).text();
contenttext = contenttext.replace("br2n", "\n");
tabletext = Jsoup.parse(tabletext.replaceAll("(?i)<br[^>]*>", "br2n")).text();
tabletext = tabletext.replace("br2n", "\n");
String text = contenttext.substring(tabletext.length(), contenttext.length());
System.out.println(text);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
这给出了以下输出:
Aeneas dwaalt rond in Troje en zoekt Cre?sa. Cre?sa is echter op de vlucht gestorven Plotseling verschijnt er een schim. Het is de schim van Cre?sa. De schim zegt:'De oorlog woedt!' Troje is ingenomen! Cre?sa is gestorven:'Vlucht!' Aeneas vlucht echter niet. Dan spreekt de schim:'Vlucht! Er staat jou een nieuw vaderland en een nieuw koninkrijk te wachten.' Dan pas gehoorzaamt Aeneas en vlucht.
有什么办法吗?标记可以在输出中再次成为原始(ü)吗?
【问题讨论】:
-
Jsoup 可能解析正确。你如何可视化输出?在控制台窗口中?作为写入文件的文本?
-
最终输出会在一个 android TextView 中,但这是一个控制台窗口,android logcat 给出了相同的结果。