繁体   English   中英

Android获取目录nullpointerexception中的所有文件

[英]Android get all files in directory nullpointerexception

我正在尝试获取SD卡上特定目录的所有文件。 因此我发现了这个功能

public static List<File> getListFiles(File parentDir) {
    ArrayList<File> inFiles = new ArrayList<File>();
    File[] files = parentDir.listFiles();

    for (File file : files) {
        if (file.isDirectory()) {
            inFiles.addAll(getListFiles(file));
        } else {
            if(file.getName().endsWith(".mp3")){
                inFiles.add(file);
            }
        }
    }

    return inFiles;
}

问题如下:如果文件夹为空,它将抛出NullPointerException。 如何避免这种情况?

设置了对外部存储的读取和写入权限。

如果您必须检查是否为null,则没有什么可做的

File[] files = parentDir.listFiles();
if (files == null) {
  return inFiles;
}

在您的情况下, inFiles是一个空集合,尝试对一个空集合进行迭代不会遇到任何问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM