Получить содержимое веб-страницы с ивритскими символами / UTF-8

1

Я пытаюсь привести следующий контент веб-страницы (как это) в TextView в приложении для Android.

http://www.kavim-t.co.il/include/getXMLStations.asp?parent=56_%20_2

Вот результаты, Chrome vs Activity:

Изображение 174551

Как вы можете видеть, проблема в том, что символы на иврите /UTF-8/Windows-1255 показаны как "???".

Я использую следующий код (используя org.apache.http):

TextView tv = (TextView) findViewById(R.id.tv1);

HttpClient client = new DefaultHttpClient();
client.getParams().setParameter(CoreProtocolPNames.HTTP_CONTENT_CHARSET, HTTP.UTF_8);
HttpGet request = new HttpGet("http://www.kavim-t.co.il/include/getXMLStations.asp?parent=56_%20_2");

HttpResponse response = null;
response = client.execute(request);
BufferedReader rd = null;
rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));

String line = "";
while ((line = rd.readLine()) != null) {
    tv.append(line);
}
Теги:
hebrew

3 ответа

3
Лучший ответ

Попробуйте указать набор символов для InputStreamReader

http://developer.android.com/reference/java/io/InputStreamReader.html#InputStreamReader(java.io.InputStream, java.lang.String)

rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "UTF-8"));
  • 0
    Ссылка должна указывать на документацию по Android, а не на документацию J2SE. В любом случае, это должен быть правильный ответ (это действительно контент UTF-8).
  • 0
    Исправлена ссылка на Javadoc
Показать ещё 1 комментарий
0

Это несколько завершает приведенные здесь решения (по крайней мере, для пользователей Eclipse).

Если вы работаете с Eclipse, и консоль продолжает показывать '???????' вместо символов UTF-8, отличных от английского, следуйте инструкциям в следующей ссылке (помог мне после почти потерять мое мнение об этом):

http://decoding.wordpress.com/2010/03/18/eclipse-how-to-change-the-console-output-encoding/

0

По моим знаниям

Иврит поддерживается в версиях Android 2.2 и выше.

Если вы тестируете на устройстве ниже версии 2.2, вы не сможете увидеть текст на иврите

Попробуйте протестировать версию Android 2.2 и выше

  • 0
    Вы неправы. Иврит поддерживается даже в 2.1. Кроме того, я пишу для 2.3.3

Ещё вопросы

Сообщество Overcoder
Наверх
Меню