Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用Jsoup:加载包含UTF-8字符的HTML对某些网站有效,但对其他网站无效?_Java_Html_Http_Utf 8_Jsoup - Fatal编程技术网

Java 使用Jsoup:加载包含UTF-8字符的HTML对某些网站有效,但对其他网站无效?

Java 使用Jsoup:加载包含UTF-8字符的HTML对某些网站有效,但对其他网站无效?,java,html,http,utf-8,jsoup,Java,Html,Http,Utf 8,Jsoup,我对Jsoup有一个奇怪的问题:我使用此函数从网站检索UTF-8编码的HTML: public static Document getDocument(String url) { Document doc = null; try { doc = Jsoup.parse(new URL(url).openStream(), "UTF-8", url); doc.outputSettings().charset("

我对Jsoup有一个奇怪的问题:我使用此函数从网站检索UTF-8编码的HTML:

public static Document getDocument(String url) {

        Document doc = null;

        try {

            doc = Jsoup.parse(new URL(url).openStream(), "UTF-8", url);
            doc.outputSettings().charset("UTF-8"); 
        } catch (IOException e) {
            e.printStackTrace();
        } 

        return doc;
    }
现在,我获取一些url字符串并执行以下操作以打印html:

System.out.println(getDocument(url).body().html());
我在包含俄文字符的不同网站上尝试了这个方法,但这确实令人困惑:对于一些网站,它可以正常工作(html看起来不错),而对于其他网站,所有俄文字符都被替换为�. 但我在这两种情况下使用的代码完全相同! 例如,对于“”它可以工作,但是对于“”它不能(所有俄语字符都替换为�)! 这怎么可能取决于网站

谢谢大家,大家好,,
Daniel

是什么让你认为每个网站的内容都使用UTF-8编码?第二个网站使用windows-1251。啊,你说得对,谢谢!是什么让你认为每个网站的内容都使用UTF-8编码?第二个网站使用windows-1251。啊,你说得对,谢谢!