我正在尝试将下一个网页内容(因为它)带到我的Android应用程序中的TextView。
http://www.kavim-t.co.il/include/getXMLStations.asp?parent=56_%20_2
以下是Chrome与活动的结果:
正如您所看到的,问题是希伯来语/ 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);
}
答案 0 :(得分:3)
尝试为InputStreamReader
指定字符集rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "UTF-8"));
答案 1 :(得分:0)
据我所知
Android版本2.2及更高版本支持希伯来语。
如果您在2.2版以下的设备中进行测试,则无法看到希伯来文
尝试在Android 2.2及以上版本中进行测试
答案 2 :(得分:0)
这确实完成了这里给出的解决方案(至少对于Eclipse用户而言)。
如果您正在使用Eclipse并且控制台一直显示“???????”而不是UTF-8非英语字符,请按照以下链接中的说明(在几乎失去理智后帮助我):
http://decoding.wordpress.com/2010/03/18/eclipse-how-to-change-the-console-output-encoding/