是否可以开发一个可以读取设备内存中所有文件和目录的Java应用程序?我认为这是不可能的(出于安全原因),但我需要另一种意见。
答案 0 :(得分:0)
你可以这样做。 可能会帮助你。
我将路径设备存储
如果您正在使用android studio或类似的vise工具将调试点放在
旁边 File[] dir = new File(path).listFiles();
,您将看到文件/文件夹层次结构。
path = Environment.getExternalStorageDirectory().toString()
public static ArrayList<String> listFoldersAndFilesFromSDCard(String path) {
ArrayList<String> arrayListFolders = new ArrayList<String>();
try {
File[] dir = new File(path).listFiles();
// here dir will give you list of folder/file in hierarchy
if (null != dir && dir.length > 0) {
for (int i = 0; i < dir.length; i++) {
if (dir[i].isDirectory()) {
arrayListFolders.add(new File(dir[i].toString()).getName());
// Here you can call recursively this function for file/folder hierarchy
} else{
// do what ever you want with files
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
return arrayListFolders;
}