如何在Android目录中列出文件?

时间:2019-10-31 06:55:25

标签: android file

我在根目录中有一个文件夹,其中包含一些我想列出的文件,但是数组返回null:

String path = getenv("EXTERNAL_STORAGE") + "/Files";
File directory = new File(path);
File[] files = directory.listFiles();

已授予权限

1 个答案:

答案 0 :(得分:0)

首先,您需要使用Environment.getExternalStorageDirectory()而不是getenv()

String path = Environment.getExternalStorageDirectory().toString() + "/Files";
File directory = new File(path);
File[] files = directory.listFiles();
for (int i = 0; i < files.length; i++)
    Log.d("Files", "FileName:" + files[i].getName());

但是非常重要的一点是/storage/emulated/0文件夹确实不存在。这就是所谓的“符号链接”,或更简单地说,是对实际数据存储位置的引用。这就是为什么您的数组返回null的原因。您需要在设备上找到存储它的实际物理位置。