INC*_*ITO 3 java file-io android directory-traversal android-anr-dialog
如何递归扫描Android中的目录并显示文件名?我正在尝试扫描,但它很慢(强制关闭或等待).我正在使用在这个问题FileWalker的单独答案中给出的课程.
Dhe*_*.S. 16
您几乎总是应该从非UI线程访问文件系统.否则,您可能会长时间阻止UI线程并获得ANR.在运行FileWalker AsyncTask的doInBackground().
这是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());
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
您可以从后台线程调用它,如下所示:
Filewalker fw = new Filewalker();
fw.walk(context.getFilesDir());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8734 次 |
| 最近记录: |