1

我正在尝试将下一个网页内容(原样)带到我的 android 应用程序中的 TextView 中。

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

以下是 Chrome 与 Activity 的结果:

在此处输入图像描述

如您所见,问题在于希伯来语/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);
}
4

3 回答 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"));
于 2012-07-13T15:07:21.903 回答
0

据我所知

Android 2.2 及更高版本支持希伯来语。

如果您在低于 2.2 版本的设备中进行测试,您将无法看到希伯来语文本

尝试在android 2.2及以上版本测试

于 2012-07-13T13:20:18.697 回答
0

这确实在一定程度上完善了这里给出的解决方案(至少对于 Eclipse 用户而言)。

如果您正在使用 Eclipse 并且控制台一直显示“???????” 而不是 UTF-8 非英语字符,请按照以下链接中的说明进行操作(在几乎失去理智后帮助了我):

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

于 2013-07-17T19:51:40.607 回答