我正在使用fileBrowser来查找手机上的文件,但我想显示我的应用可以向用户开放的所有文件,然后用户选择一个。与音乐播放器一样,它显示电话,SD卡和内部存储器中的所有歌曲,而不仅仅是用户所在文件夹中的歌曲。
答案 0 :(得分:9)
在列出文件时使用文件名过滤器。下面的示例列出了给定root
目录中的所有mp3文件(注意 - 以下代码不会对root
下的所有文件夹递归执行) -
String files[] = root.list(audioFilter);
FilenameFilter audioFilter = new FilenameFilter() {
File f;
public boolean accept(File dir, String name) {
if(name.endsWith(".mp3") || name.endsWith(".MP3")) {
return true;
}
f = new File(dir.getAbsolutePath()+"/"+name);
return f.isDirectory();
}
};
答案 1 :(得分:1)
我不知道您正在使用哪种FileBrowser实现,但是一个好的实现应该接受FileFilter。您可以实现自己的过滤器,为public abstract boolean accept (File pathname)