2012-03-26 64 views
0

我想從Android手機上存儲在SD卡上的文件中讀取內容。爲此,我使用下面的代碼:從三星手機的內存卡限制到10kb的Android閱讀文件

public String readIt(File file) { 
    StringBuffer sb = new StringBuffer(); 
    try { 
     BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), encoding)); 
     String line; 
     while ((line = reader.readLine()) != null) { 
      sb.append(line + '\n'); 
     } 
     reader = null; 
    } catch (FileNotFoundException e) { 
     Toast.makeText(this, "File not found", Toast.LENGTH_SHORT).show(); 
     return null; 
    } catch (IOException e) { 
     Toast.makeText(this, "Error reading file", Toast.LENGTH_SHORT).show(); 
     return null; 
    } 
    return sb.toString(); 
} 

這已經困擾了我一段時間,爲什麼它減少對三星手機的任何想法?有沒有人有一個如何解決它的建議,並保持文件的編碼時,閱讀它?

回答

2
  FileReader fstream; 
     try { 
       fstream = new FileReader(filename); 
     } catch (FileNotFoundException e) { 
       Log.e("meminfo", "File access error " + filename); 
       return null; 
     } 

     BufferedReader in = new BufferedReader(fstream, CHARS_TO_BUFFER); 

使用此片段我對三星手機沒有任何問題。

相關問題