3

我为我糟糕的英语语法道歉。

我想知道android设备是否在同一设备中同时具有只读和读/写存储?

如果是,如何获取只读存储目录。

String path = Environment.getExternalStorageDirectory().toString();

使用此代码可以检索主存储设备的路径。

实际上我想做的是,获取内部和外部存储的所有目录并检查它们是仅准备好还是单独读/写..

是否可以找到所有目录并检查是否可写?

4

1 回答 1

1

如果 SD 卡是可读的,您可以通过简单的方式检索所有文件和文件夹:

String sdPath = Environment.getExternalStorageDirectory().getAbsolutePath();

然后轻松获取文件列表:

File sdFile = new File(sdPath);
File fileList[] = sdFile.listFiles();

获取列表后,您可以检查文件是否可读、可写或两者兼而有之。此外,如果它是一个文件或目录,如果它是一个目录,请继续搜索该目录以查找可读/可写文件。小例子:

for(int i=0;i<fileList.length;i++){

   File fileListFile = fileList[i];
   boolean isReadable = fileListFile.canRead();
   boolean isWritable = fileListFile.canWrite();
   boolean isDir = fileListFile.isDirectory();

}

这只是一个可以引导你走向正确方向的例子。如果您想列出可读/可写文件或目录,还有更多工作要做。

于 2015-04-28T12:58:00.803 回答