如何获取SD卡上特定目录中所有文件夹(不是文件)的名称?例如,/sdcard/first_level_folder/...
中的所有子文件夹名称。
我需要文件夹名称,所以我可以将完整路径(字符串)传递给方法,然后压缩(压缩)它。
感谢。
答案 0 :(得分:12)
我认为你在寻找的是
File dir = new File("directoryPath");
FileFilter fileFilter = new FileFilter() {
public boolean accept(File file) {
return file.isDirectory();
}
};
File[] files = dir.listFiles(fileFilter);
答案 1 :(得分:8)
步骤1:使用Environment.getExternalStorageDirectory()
获取外部存储的根目录。 /sdcard/
在大多数设备上都不正确。
步骤2:使用适当的File
构造函数创建指向外部存储内所需目录的File
对象。
步骤3:使用Java I/O查找该目录中的内容。
答案 2 :(得分:3)
你可以使用类似的东西:
File file[] = Environment.getExternalStorageDirectory().listFiles();
for (File f : file)
{
if (f.isDirectory()) { ... do stuff }
}
答案 3 :(得分:2)
这是一个与java相关的问题。 检查this。
要访问sdcard文件夹名称:
File extStore = Environment.getExternalStorageDirectory();
String SD_PATH = extStore.getAbsolutePath()+"your sd folder here";
答案 4 :(得分:0)
File file=new File("/mnt/sdcard/");
File[] list = file.listFiles();
int count = 0;
for (File f: list){
String name = f.getName();
if (name.endsWith(".jpg") || name.endsWith(".mp3") || name.endsWith(".some media extention"))
count++;
System.out.println("170 " + count);
}
答案 5 :(得分:-2)
File file[] = Environment.getExternalStorageDirectory().listFiles();
for (File f : file) {
if (f.isDirectory()) {
// ... do stuff
}
}
步骤1:使用Environment.getExternalStorageDirectory()
获取外部存储的根目录。 /sdcard/
在大多数设备上都不正确。
步骤2:使用适当的File
构造函数创建指向外部存储内所需目录的File
对象。
步骤3:使用Java I/O查找该目录中的内容。