扫描android中的文件夹以查找文件路径

时间:2011-03-11 23:14:05

标签: java android

所以我在“mnt / sdcard / folder”中有一个文件夹,其中包含图像文件。我希望能够扫描文件夹以及文件夹中的每个文件,将每个文件路径放在arraylist中。有一个简单的方法吗?

2 个答案:

答案 0 :(得分:15)

您可以使用

List<String> paths = new ArrayList<String>();
File directory = new File("/mnt/sdcard/folder");

File[] files = directory.listFiles();

for (int i = 0; i < files.length; ++i) {
    paths.add(files[i].getAbsolutePath());
}

请参阅File中的listFiles()个变体(一个空,一个FileFilter和一个FilenameFilter)。

答案 1 :(得分:12)

是的,您可以将java.io.File API与FileFilter一起使用。

File dir = new File(path);
FileFilter filter = new FileFilter() {
    @Override
    public boolean accept(File file) {
        return file.getAbsolutePath().matches(".*\\.png");
    }
};
File[] images = dir.listFiles(filter);

当我看到这种技术时,我感到非常惊讶,因为它非常易于使用并且可以实现可读代码。