Android FileInputStream fis.read()出现异常
我想访问SD卡,为此我正在编写一些代码:Android FileInputStream fis.read()出现异常,android,Android,我想访问SD卡,为此我正在编写一些代码: 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 我不明白为什么
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
我不明白为什么这是一个异常,您试图读取的实际上不是一个文件,而是一个目录 这就是为什么会出现异常的原因
要列出反定向内容,应在文件对象上使用
list()
方法。首先,发布日志。其次,检查您是否具有有效的权限,可以使用uses权限标记从清单文件中读取外部storagestate权限。你做到了吗?是的,已经给了android.permission.WRITE_EXTERNAL_STORAGE应用程序权限,但仍然给了Exception。我想在内部读取SD卡,有什么办法吗?你想读什么?一个文件,任何列出SD内容的文件?不能使用FileInputStream读取目录。您可以列出目录中的文件,然后一次读取一个。据我所知,这在Java中是不可能的。也许这是一个新问题。