Привет!
Я парсю html-страницу c помощью Jsoup, которая закодирована в windows-1251(об этом говорит тег на самой странице).
Проблема в том, что когда я преобразую спаренный участок кода в строку, а после пытаюсь вызвать String.contains("виды"), то он возвращает мне false, хотя такая подстрока в ней существует.
Опытным путем я понял, что слово "виды" в байтовом представлении имеет вид {-30, -24, -28, -5}
Как быть?
Код:
Document page = Jsoup.connect(URL + urlShop)
.timeout(20000)
.get(); //получаем html-страницу
Elements row = page.select("div.comp"); //выбираем div с классом comp из страницы
String print = row.text(); //удаляем все теги и преобразуем код в текст
System.out.println(print.contains("виды")); // возвращает false
String regex = new String(new byte[]{-30, -24, -28, -5});
System.out.println(print.contains(regex)); //возвращает true