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 に答える