android 文件夹文件搜索

来源:互联网 发布:深圳垦鑫达对员工知乎 编辑:程序博客网 时间:2024/05/21 22:33
原网址:http://outofmemory.cn/code-snippet/2637/android-de-chazhaowenjian

该代码主要实现android下搜索文件夹中包含图片的文件,并将其放入list中。调用方法:

File f = new File("/mnt");lstFile = findFile(f,".jpg");

private static List<File> FindFile(File file, String key_search)    {        List<File> list = new ArrayList<File>();        if (file.isDirectory()) {            File[] all_file = file.listFiles();            if (all_file != null) {                for (File tempf : all_file) {                    if (tempf.isDirectory()) {                        if (tempf.getName().toLowerCase().lastIndexOf(key_search) > -1) {                            list.add(tempf);                        }                        list.addAll(FindFile(tempf, key_search));                    }                    else                     {                        if (tempf.getName().toLowerCase().lastIndexOf(key_search) > -1) {                            list.add(tempf);                        }                    }                }            }        }         return list;    }
或如下文件过滤方式
  FilenameFilter fileFilter = new FilenameFilter()    {@Overridepublic boolean accept(File dir, String filename){if( mfiletype == FileType.TXTFILE )   return filename.endsWith(".txt");else if(mfiletype == FileType.CUEFILE)   return filename.endsWith(".cue");else if(mfiletype == FileType.PICFILE)    return filename.endsWith(".jpg")||filename.endsWith(".png")||filename.endsWith(".gif");else if(mfiletype == FileType.APEFILE)return filename.endsWith(".ape");elsereturn false;}    };
 File[] all_file = CDrootpath.listFiles(fileFilter );
  if(all_file.length > 0)         {           for (File tempf : all_file) {                      if (tempf.getName().toLowerCase().endsWith(mfiletype)&& tempf.length()>100  )              {             return strPath = tempf.getPath();              }           }           }
0 0
原创粉丝点击