繁体   English   中英

从外部存储中读取特定数量的文件 Android Studio

[英]Read Specific Number of Files From External Storage Android Studio

好的,所以我想做的是,如您所见,我只想在最近的选项卡中显示来自外部存储的 3 个文件。 我对 android (java) 了解不多,所以请帮助我。 谢谢你! 在此处输入图像描述代码:

     public ArrayList<File> findFiles(File file) {
        ArrayList<File> arrayList = new ArrayList<>();
        File[] files = null;
        try{
            files = file.listFiles();
            for (File singleFile : files) {
                if (singleFile.isDirectory() && !singleFile.isHidden()) {
                    arrayList.addAll(findFiles(singleFile));
                } else if(singleFile.getName().toLowerCase().endsWith(".jpg") || singleFile.getName().toLowerCase().endsWith(".jpeg")){
                        arrayList.add(singleFile);
 }
}

据推测,您的findFiles方法传递了一个File ,它是存储在外部目录中的“最新文件”的目录? 你的应用程序有权从外部存储读取? 两者都是这个工作的先决条件。

在调用listFiles之前,您一定要检查参数是否是一个目录,因为如果没有传递目录,function 将返回 null。 请参阅文件#listFiles

如果您只想添加找到的前三个 JPEG 文件,您可以在 for 循环外创建一个 int 变量(例如“count”),每次找到 JPEG 文件时递增它,并在您跳出 for 循环后我们找到了三个匹配的文件。

此外,您还缺少catch和可能的final块,以及 function 末尾的return语句。

暂无
暂无

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

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