2013-03-05 46 views
0

我想訪問SD-CARD爲了這個,我是寫一些代碼:的FileInputStream fis.read()提供異常

File f=Environment.getExternalStorageDirectory().getAbsolutePath(); 

// f=/mnt/sdcard 

byte[] bytearray=new byte[4]; 

FileInputStream fis=new FileInputStream(f); 

fis.read(bytearray,1,1); //This line gives exception 

我想不通爲什麼一個例外

+1

首先,發佈你的logcat。其次,檢查是否有有效的權限,以使用許可標記從清單文件的外部存儲 – 2013-03-05 11:14:00

+0

中讀取狀態權限。你有沒有那樣做? – Raghunandan 2013-03-05 11:14:19

+0

是已經給android.permission.WRITE_EXTERNAL_STORAGE權限的應用程序,但仍然給出例外 – JOHNCENA 2013-03-05 11:30:20

回答

1

什麼你正在嘗試閱讀並不是一個文件,而是一個目錄。

這就是您收到異常的原因。

對於列出的直接目錄內容,您應該在File對象上使用list()方法。

+0

我想在內部讀取SD卡,有沒有辦法做到這一點? – JOHNCENA 2013-03-05 11:37:02

+0

你想讀什麼?一個文件,任何文件,列出SD內容?您不能使用FileInputStream來讀取目錄。您可以列出目錄中的文件,並一次讀取一個文件。 – 2013-03-05 11:54:19

+0

有沒有什麼方法可以讀取目錄 – JOHNCENA 2013-03-06 04:38:35

相關問題