0

我一直在网上寻找并试图理解。我正在解析一些以 iso-8859-1 编码的 html 文件。解析后,我希望所有输出都采用标准 java 编码(utf-something)

这是我如何做到的:

currentDocument = Jsoup.parse(new File("thing.htm", "ISO-8859-1");
Element elt = currentDocument.getElementById("bim");
String title = elt.select("h1,h2,h3,h4,h5,h6").first().text();
System.out.println(title);

文件中的字符串是:

G18 Legemiddeløkonomi – pasientens venn eller fiende

输出是:

G18?Legemiddel?konomi ? pasientens venn eller fiende

我想我在某处做错了什么,因为我知道 Jsoup 可以做到这一点,我只是不知道它是什么。顺便说一句,我在 MacOSX 上。有人可以帮助我吗?

谢谢

4

1 回答 1

0

好的,经过进一步调查并感谢@Esailija,我发现我的控制台没有以 UTF-8 输出,这已通过以下方式解决:

PrintStream stdout = new PrintStream(System.out, true, "UTF-8"); 
System.setOut(stdout);

我也用过:currentDocument.outputSettings().charset("UTF-8");但我不确定这是否有用。

于 2013-04-10T21:36:43.587 回答