2012-11-02 153 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");