Android SD卡目录文件夹名称列表

时间:2011-08-02 19:59:55

标签: android directory

如何获取SD卡上特定目录中所有文件夹(不是文件)的名称?例如,/sdcard/first_level_folder/...中的所有子文件夹名称。

我需要文件夹名称,所以我可以将完整路径(字符串)传递给方法,然后压缩(压缩)它。

感谢。

6 个答案:

答案 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查找该目录中的内容。