Я искал онлайн и пытался понять. Я разбираю некоторые html-файлы, которые закодированы в iso-8859-1. После того, как синтаксический анализ я хочу все выходные, чтобы быть в стандартной кодировке Java (UTF-то)Jsoup parse iso-8859-1 file
Вот как я это делаю:
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 Я просто не знаю, что это такое. Btw Я на MacOSX. Может кто-нибудь мне помочь?
Thx
В моих файлах есть '', поэтому я также пробовал использовать 'Jsoup.parse (новый файл (« thing.htm »), null);' он распознает ISO (в соответствии с этим методом currentDocument.outputSettings(). charset(). name() '). Но у меня все еще есть такая же проблема кодирования символов ... – charly
Попробуйте '.html()' вместо '.text()'. Но это приведет к выбросу окружающих тегов. – devnull
Вероятно, у вас неправильная кодировка для 'System.out'. «System.out.println (« \ u00f8 »)' print 'ø' в тех же обстоятельствах? – Esailija