我使用jsoup从不同页面的html源代码中提取了一些信息。它们大多数是UTF-8编码的。其中之一是使用ISO-8859-1编码的,这会导致一个奇怪的错误(在我看来)。
包含错误的页面是:http : //www.gudi.ch/armbanduhr-
metall-
wasserdicht-1280x960-megapixels-p-560.html
我用以下代码阅读了所需的String:
Document doc = Jsoup.connect("http://www.gudi.ch/armbanduhr-metall-wasserdicht-1280x960-megapixels-p-560.html").userAgent("Mozilla").get();
String title = doc.getElementsByClass("products_name").first().text();
问题是字符串“ HD Armbanduhr aus Metall 4GB Wasserdicht 1280X960 – 5
Megapixels”中的连字符。像öäü这样的正常变音符号可以正确读取。仅此单个字符,不会输出为“-” 造成了问题。
我试图用out.outputSettings()。charset(“ ISO-8859-1”)覆盖(正确设置的)页面编码,但是那也没有帮助。
接下来,我尝试将Charset类的字符串的编码手动更改为utf8和iso-8859-1。也没有运气。
有没有人提示我用jsoup解析html文档后可以尝试获得正确的字符?
谢谢