Jsoup.connect("http://www.design.cmu.edu/community.php?s=3").get();
有人可以告诉我代码为什么会给我错误:
java.nio.charset.IllegalCharsetNameException: 'ISO-8859-1'
答案 0 :(得分:2)
问题出在目标页面中。它根本没有完善的形式。
解析页面时,JSoup尝试修复页面,一方面,将内容类型解析为“text / html; charset ='iso-8859-1'”(包含单引号)。
然后传递此字符串(带单引号)并使用它来获取字符集:
Charset.forName("'ISO-8859-1'");
失败了。
问题出在目标页面中。 也许你可以使用这个替代方法,它不会从页面解析charset,因为你明确地传递它:
String url = "http://www.design.cmu.edu/community.php?s=3";
Document document = Jsoup.parse(new URL(url).openStream(), "ISO-8859-1", url);