2013-03-05 2 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

сначала отправьте свой логарифм. во-вторых, проверьте, есть ли у вас допустимые разрешения для чтения из внешнего хранилища –

+0

разрешение штата в файле манифеста с тегом uses-permission. У вас это сделали? – Raghunandan

+0

yes уже дал андроид.permission.WRITE_EXTERNAL_STORAGE разрешение на приложение, но все же дает исключение – JOHNCENA

ответ

1

Что вы пытаетесь прочитать на самом деле не файл, а каталог.

Именно по этой причине вы получаете исключение.

Для размещения содержимого directectory вы должны использовать метод list() в объекте File.

+0

Я хочу прочитать SD-карту внутри, есть ли способ сделать это? – JOHNCENA

+0

Что вы хотите прочитать? файл, любой файл, содержащий содержимое SD? Вы не можете использовать FileInputStream для чтения каталога. Вы можете перечислить файлы внутри каталога и читать их по одному. –

+0

есть ли способ прочитать память каталога – JOHNCENA

Смежные вопросы