gpt4 book ai didi

java - 为什么 JSoup 打印一个问号

转载 作者:行者123 更新时间:2023-12-01 19:05:06 24 4
gpt4 key购买 nike

我正在尝试理解以下内容。我有一些代码正在读取 gutenberg.org 的页面。几乎一切都很好,但有些角色却不然。它们在浏览器中一切正常。

package nl.atticworks.gutenberg;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;

public class Gutenberg {

private static final String GET_URL = "http://www.gutenberg.org/browse/languages/nl";

public static void main(String[] args) {
try {
Document doc = Jsoup.connect(GET_URL).get();
Elements data = doc.select("div.pgdbbylanguage");
for (Element d : data) {
Elements children = d.select("*");
for (Element child : children) {
if (child.tagName().equals("ul")) {
Element author = children.get(children.indexOf(child) - 1);
String a1 = author.select("a:last-child").text();
if (a1.startsWith("Kara")) {
System.out.println(a1);
Elements titles = child.select("li.pgdbetext a");
for (Element title : titles) {
System.out.println("\t" + title.text());
}
}
}
}
}
} catch (IOException ex) {
// do something...
}
}
}

字符串 a1 打印“Karadži?, Vuk Stefanovi?, 1787-1864”,但应打印“Karadžić, Vuk Stefanović, 1787-1864”

我很确定编码没问题(UTF-8),但是带有锐角的 c 编码不正确。

尽管如此,浏览器确实显示了正确的字符,但 Jsoup 却没有。为什么?

问候,汉斯

最佳答案

由于您没有说明您的程序在什么中运行,因此很难给出明确的答案,但基本上您的代码没有任何问题。 JSoup 不对您的显示问题负责,无论您在哪个控制台上显示都是问题所在。

如果您将控制台(或 IDE)设置为 UTF-8 编码,它应该可以正确显示。

关于java - 为什么 JSoup 打印一个问号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59576011/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com