Android:如何在SD卡上搜索文件?

Mar*_*eiz 1 search android list sd-card

如果输入的字符串,如何在我的SD卡上搜索文件?

我想搜索"test",并希望获得一个列表,其中包含名称中包含字符串"test"的所有文件:

testfile.txt

filetest.jpg

thisisatestfile.xml
Run Code Online (Sandbox Code Playgroud)

等等

S.D*_*.D. 5

您可以使用ListFiles()Apache的共享IO,传递RegexFileFilter的FileFilter.

在Android项目中使用Commons IO jar库的示例:

Collection<File> files = FileUtils.listFiles(
                            Environment.getExternalStorageDirectory(),
                            new RegexFileFilter(".*test.*"),
                            TrueFileFilter.TRUE);

for(File f : files){
  //---do something---
}
Run Code Online (Sandbox Code Playgroud)

另外,请在单独的线程中运行此代码,请考虑使用AsyncTask.