JTidy неправильно обрабатывает некоторые символы

Некоторые символы искажаются после того, как я вызываю Tidy.parse. Два примера: ' вместо ' и ∼ вместо ~

Я предполагаю, что они, должно быть, пришли из Word или чего-то подобного, но приборка очень плохо с ними справляется. В частности, он преобразует их в их индивидуальные представления сущностей для диакритических знаков, которые затем преобразуются в бессмысленный мусор позже в моем процессе. Я уверен, что есть и другие, но это те, которые я нашел до сих пор. Есть ли какой-нибудь известный способ преобразовать их заранее или игнорировать их как часть аккуратности?

        Tidy tidy = new Tidy();
        tidy.setXHTML(true);
        tidy.setForceOutput(true);
        tidy.parse(inputStream, outputStream);

person ArcticDoom    schedule 16.04.2019    source источник
comment
ответ на другой вопрос о замене bork показывает, как увидеть текущую конфигурацию для получения дополнительных подсказок. а>   -  person ocæon    schedule 16.04.2019
comment
Спасибо, это поможет мне хотя бы увидеть, как это было настроено.   -  person ArcticDoom    schedule 16.04.2019


Ответы (1)


После распечатки конфигурации я увидел, что кодировка ввода и вывода не была установлена ​​​​на UTF-8, как я думал, поэтому мне просто нужно было добавить это:

tidy.setInputEncoding("UTF-8");
tidy.setOutputEncoding("UTF-8");
person ArcticDoom    schedule 16.04.2019