当前位置: 首页 > 面试题库 >

如何在Android中递归扫描目录

漆雕彦
2023-03-14
问题内容

如何在Android中递归扫描目录并显示文件名?我正在尝试扫描,但是速度很慢(强制关闭或等待)。我正在使用对此问题FileWalker单独回答中给出的类。


问题答案:

您几乎应该始终仅从非UI线程访问文件系统。否则,您可能会长时间阻塞UI线程并获得ANR。在运行FileWalker
AsyncTaskdoInBackground()

这是FileWalker的稍微优化的版本:

public class Filewalker {

    public void walk(File root) {

        File[] list = root.listFiles();

        for (File f : list) {
            if (f.isDirectory()) {
                Log.d("", "Dir: " + f.getAbsoluteFile());
                walk(f);
            }
            else {
                Log.d("", "File: " + f.getAbsoluteFile());
            }
        }
    }   
}

您可以从这样的后台线程调用它:

Filewalker fw = new Filewalker();
fw.walk(context.getFilesDir());


 类似资料:
  • 问题内容: 我找到了有关如何扫描条形码的教程。但是在我的应用程序中,我必须扫描QR码。如何在Android中扫描QR码? 问题答案: 和在

  • 问题内容: 我想扫描目录树并列出每个目录中的所有文件和文件夹。我创建了一个程序,可从网络摄像机下载图像并将其保存在本地。该程序根据图片的下载时间创建文件树。我现在想扫描这些文件夹并将图像上传到Web服务器,但是我不确定如何扫描目录以查找图像。如果有人可以张贴一些示例代码,那将非常有帮助。 编辑 :我在嵌入式linux系统上运行它,不想使用boost 问题答案: 请参阅以获取简单的“文件树遍历”。我

  • 问题内容: 目录类似于: 我正在使用与PHPMyAdmin使用的相同的PHPZip类。我不确定如何压缩目录而不是仅压缩文件。这是我到目前为止的内容: 但是当我尝试解压缩相应的已下载的zip文件时,出现“不允许操作” 仅当我尝试在Mac上解压缩时,才出现此错误,当我通过命令行解压缩时,文件解压缩就可以了。我是否需要在下载时发送特定的内容类型,当前为“application / zip” 问题答案:

  • 我试图启动条形码扫描器上的用户按下一个按钮在HTML。然而,我又犯了一个错误: 在javascript中使用: 现在,在Java文件中,我有以下代码,它在中声明函数

  • 问题内容: 如何用Java递归列出文件夹中的所有文件? 问题答案: 不确定要如何表示树?无论如何,这是一个使用递归扫描整个子树的示例。文件和目录是相同的。请注意,File.listFiles()对于非目录返回null。 Java 7提供了一些改进。例如,DirectoryStream一次提供一个结果- 调用者在执行操作之前不再需要等待所有I / O操作完成。这允许增量GUI更新,提前取消等。 请注

  • 问题内容: 我需要在C编程中递归列出所有目录和文件。我已经研究了FTW,但是我所使用的2个操作系统(Fedora和Minix)中没有包括。在过去的几个小时中,我从阅读的所有不同内容中开始感到头疼。 如果有人知道我的代码片段,那真是太棒了,或者如果有人可以给我很好的指导,我将不胜感激。 问题答案: 这是一个递归版本: