【问题标题】:How can I list files in a directory in Android?如何在 Android 的目录中列出文件?
【发布时间】:2019-10-31 06:55:25
【问题描述】:

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

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

已授予权限

【问题讨论】:

标签: android file


【解决方案1】:

首先,您需要使用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 的原因。您需要在设备上找到存储它的实际物理位置。

【讨论】:

  • 朋友试过了,没有任何变化。数组仍然为空。
  • @Mr.M 查看我的编辑,并确保您的/Files 目录中确实有文件。
  • 这是路径 /storage/emulated/0/Files/
  • @Mr.M 看看这篇文章:stackoverflow.com/questions/31399122/…
  • @Mr.M 再次查看我的编辑,记下我在/storage/emulated/0/ 文件夹中添加的段落。
猜你喜欢
  • 2012-01-28
  • 2020-01-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-13
  • 1970-01-01
  • 2017-11-13
  • 2012-12-09
相关资源
最近更新 更多