Я сталкивался с этой проблемой раньше. Я хотел бы убедиться, что ваша строка myHtml уже имеет хорошую кодировку, прежде чем загружать ее в свой WebView. Вы можете проверить это, войдя в систему с помощью Log.d (). Если в этой строке неправильная кодировка, она также не будет отображаться правильно в WebView. Вы увидите этих странных персонажей в LogCat.
Если это так, вам нужно убедиться, что при чтении данных в строку myHtml вы используете что-то вроде InputStreamReader и передаете его в кодировке символов «UTF-8».
Я бы изменил строку кода, которую вы используете:
BufferedReader buffer = new BufferedReader(new InputStreamReader(content), 1000);
до:
BufferedReader buffer = new BufferedReader(new InputStreamReader(content, "UTF-8"), 1000);
Эта версия конструктора документирована для:
Создает новый InputStreamReader для InputStream в. Преобразователь символов, который используется для декодирования байтов в символы, идентифицируется по имени по enc. Если кодировка не может быть найдена, выдается ошибка UnsupportedEncodingException.
на http://developer.android.com/reference/java/io/InputStreamReader.html и посмотрите на второй.
РЕДАКТИРОВАТЬ: Если это не сработает, вы можете попробовать:
String s = EntityUtils.toString(entity, HTTP.UTF_8);
от Проблема с Android Java UTF-8 HttpClient