Plzzz帮助我。已经迟到了寻找解决方案:
我想列出Android手机内部存储器和外部存储器中的每个文件夹和文件。
以下代码仅获取单个目录中的文件列表..但我无法理解如何列出内部和外部存储器中的所有文件夹和文件。
.....列出文件= getListFiles(新文件("你的根")); .... private List getListFiles(File parentDir){ ArrayList inFiles = new ArrayList(); File [] files = parentDir.listFiles(); for(文件文件:files){ if(file.isDirectory()){ inFiles.addAll(getListFiles(文件)); } else { 如果(file.getName()的endsWith("的.csv&#34)){ inFiles.add(文件); } } } 返回inFiles; }
任何帮助?
答案 0 :(得分:0)
查看File对象。它为您提供了获取目录中所有文件的方法,告诉您文件是否是目录,还有许多其他内容。
您可以轻松地对目录系统执行递归树遍历。但是,您可能会遇到权限问题,除非您已“植根”您的设备。
答案 1 :(得分:0)
我终于在其他地方找到了这个......这就是它的完成方式(功能齐全的代码)
public void walk(File root) {
File[] list = root.listFiles();
for (File f : list) {
if (f.isDirectory()) {
Log.d("realcrazy", "Dir: " + f.getAbsoluteFile());
walk(f);
}
else {
Log.d("realcrazy2", "File: " + f.getAbsoluteFile());
}
}
}