java - 获取带有希伯来字符/UTF-8 的网页内容

标签 java android apache hebrew

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

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

这是结果,Chrome 与 Activity:

enter image description here

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

最佳答案

尝试为 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"));

关于java - 获取带有希伯来字符/UTF-8 的网页内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11470929/

相关文章:

Android NFC应用安全测试

java - AAR 传递依赖 Google 位置服务

apache - 使用 Apache Web 服务器代理传递下的 TURN 服务器

apache - 在 apache httpd 反向代理和 Tomcats 之间进行双向 SSL 身份验证

java - 如何通过改造在RecyclerView中实现分页?

java - 我需要使用 websockets 将 ESP8266 连接到本地 Java 服务器的帮助

java - android应用未执行

python - Python 中的 Apache Avro 性能非常缓慢,编码为消息与文件时的结果不同

java - Singleton:在构造函数中抛出异常

java - 读取 .xml 文件进行解析时出现 FileNotFoundException