1

次のコードを使用して、テキストファイルのaboutテキストを表示しています。しかし、ドイツ語のウムラウトä、ü、öを正しく表示するには問題があります。エンコーディングを変更または設定するにはどうすればよいですか?アンドロイスは言う:

public InputStreamReader(InputStream in)以降:APIレベル1

のInputStreamに新しいInputStreamReaderを構築します。このコンストラクターは、文字コンバーターを「file.encoding」プロパティで指定されたエンコーディングに設定し、プロパティが存在しない場合はISO 8859_1(ISO-Latin-1)にフォールバックします。

public void onCreate(Bundle savedInstanceState) {
    setContentView(R.layout.help); 
    TextView tv = (TextView)findViewById(R.id.help_text);
    //tv.setText(readRawTextFile(R.raw.help));
    tv.setText(Html.fromHtml(readRawTextFile(R.raw.help)));
}

public static String readRawTextFile(int id) {
    InputStream inputStream = mContext.getResources().openRawResource(id);
    InputStreamReader in = new InputStreamReader(inputStream);
    BufferedReader buf = new BufferedReader(in);
    String line;
    StringBuilder text = new StringBuilder();
    try {
        while (( line = buf.readLine()) != null) 
            text.append(line);
        //text.append("<br>" );
    } catch (IOException e) {
        return null;
    }
    return text.toString();
}

前もって感謝します!

4

1 に答える 1

4

InputStreamReaderの作成中に、テキストファイルで使用されている文字セットを次のように指定してみてください。

InputStreamReader in = new InputStreamReader(inputStream, charset); 

利用可能な文字セットは次の場所にあります:文字セット

幸運を。

于 2012-10-06T14:32:00.040 に答える