更改file.encoding以显示变音符号

时间:2012-10-06 12:28:51

标签: android

我正在使用以下代码显示文本文件中的文本。但我有问题正确显示德语变形金刚ä,ü,ö。如何更改或设置编码? 安德罗伊斯说:

  

public InputStreamReader(InputStream in)自:API Level 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();
}

提前致谢!

1 个答案:

答案 0 :(得分:4)

您可以尝试在创建InputStreamReader期间指定文本文件中使用的字符集:

InputStreamReader in = new InputStreamReader(inputStream, charset); 

您可以在Charset

中找到可用的字符集 祝你好运。