Aadmin(〜 ̄▽ ̄)〜 2023-05-01 11:16 采纳率: 28.6%
浏览 31
已结题

安卓开发:不能获取到完整的文件列表

我最近几天使用java开发文件管理的app,使用java的File类型的listFiles接口获取到的内部存储的文件列表,只能获取到文件夹,不能获取到文件

获取文件列表的代码

File externalStorage = Environment.getExternalStorageDirectory();
String path = externalStorage.getAbsolutePath();
File[] files = new File(path).listFiles();
for (File file : files) {
       Log.i("filename ",file.getName());
}

设备上的文件

img

控制台输出的结果

img

添加的权限

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
  • 写回答

2条回答 默认 最新

  • threenewbee 2023-05-01 11:49
    关注

    这个你需要递归

    public void listFiles(File dir) {
        File[] files = dir.listFiles();
        for (File file : files) {
            if (file.isDirectory()) {
                listFiles(file); //递归遍历子文件夹
            } else {
                Log.i("filename ", file.getName());
            }
        }
    }
    
    

    主程序

    File externalStorage = Environment.getExternalStorageDirectory();
    String path = externalStorage.getAbsolutePath();
    File dir = new File(path);
    listFiles(dir);
    
    
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 5月2日
  • 创建了问题 5月1日

悬赏问题

  • ¥15 oracle数据库查询语句问题
  • ¥15 有没有c++绘制算法的佬们吗救孩一下
  • ¥15 android 蓝牙闪退
  • ¥15 绝缘子污秽comsol仿真参数
  • ¥15 Fatal error in Process MEMORY
  • ¥15 labelme生成的json有乱码?
  • ¥30 arduino vector defined in discarded section `.text' of wiring.c.o (symbol from plugin)
  • ¥20 如何训练大模型在复杂因素组成的系统中求得最优解
  • ¥15 关于#r语言#的问题:在进行倾向性评分匹配时,使用“match it"包提示”错误于eval(family$initialize): y值必需满足0 <= y <= 1“请问在进行PSM时
  • ¥45 求17位带符号原码乘法器verilog代码