проблема с кодировкой Java UTF-8 - PullRequest
3 голосов
/ 16 февраля 2010

Я использую анализатор HTML с именем HTMLCLEANER для анализа HTML-страницы. проблема в том, что каждая страница имеет другую кодировку, чем другая. мой вопрос

Могу ли я перейти с любой кодировки символов на UTF-8?

Ответы [ 4 ]

3 голосов
/ 16 февраля 2010

Вы не можете плавно «преобразовать» кодировку X в кодировку Y, не зная заранее кодировку X. Просто проверьте заголовок ответа HTTP, в какой кодировке он используется (если вы получаете эти HTML-страницы по HTTP), а затем используйте соответствующую кодировку в инструменте анализа HTML.

1 голос
/ 16 февраля 2010

Откуда вы получаете HTML-страницу? Если вы получаете его из запроса сервлета, вы можете использовать для него функцию getReader () и передать его в clean(). Это будет использовать правильную кодировку. Если вы получили его из загрузки, передайте поток ввода на clean(). Если вы получаете его по http-клиенту, вам нужно проверить заголовок ответа Content-Type, используя getResponseCharSet().

1 голос
/ 16 февраля 2010

Могу ли я изменить любой персонаж кодировка в UTF-8?

Да, вы можете выразить любой символ Unicode в кодировке UTF-8.

При изменении кодировки страниц HTML может возникнуть проблема: если страница содержит метатег «charset», например,

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

Вы должны обновить этот тег, чтобы он соответствовал фактической кодировке.

0 голосов
/ 22 ноября 2014
public void arreglarString(String cadena) {
    for (int i = 161; i < 256; i++) {
        char car =  (char) i;
        cadena = cadena.replaceAll(car + "", "&#" + i); 
    }

    return cadena;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...