2012-11-02 100 views
1

Iam在从我的资产文件夹中的文件中读取文本时遇到了一些问题。
它不想显示åäö,我已经使用了这个代码,我发现在不同的stackoverflow帖子,但它不会工作。我只得到“?”而不是

Heree是代码:
在包含资产的资产中读取文本文件

public void loadQuestions() throws IOException { 
    atStart = false; 

    InputStreamReader reader = new InputStreamReader(getAssets().open("questions.txt"), "UTF-8"); 
    BufferedReader br = new BufferedReader(reader); 
    String line = br.readLine(); 
    while (line != null) { 
     Log.d("TAG", line); 
     questions.add(line); 
     line = br.readLine(); 
    } 
} 
+0

你怎么能告诉你得到的?也许问题在于显示字符,而不是阅读它们。 – zmbq

+0

Im在LogCat和TextView中显示它们,它是相同的。我得到“?”在每一个åäö。 – JussT

+0

看看你读的行,并检查这些字符的*二进制*值,以确保它确实是一个输入问题。 – zmbq

回答

3

,我发现自己的问题。
当我保存我的文本文件时,我必须使用UTF-8编码保存,而不是ANSI。

0

使用ISO-8859-15下面给出:它的工作原理:

InputStreamReader reader = new 
InputStreamReader(getAssets().open("questions.txt"), "ISO-8859-15");