一个没有经过优化的过滤指定目录下的指定扩展名文件的算法
2014-04-09 13:46
393 查看
/**过滤符合扩展名条件的文件*/ static File[] listHtmls(File file){ File[] fs = file.listFiles(new FileFilter() { @Override public boolean accept(File f) { return compareExtension(f); } }); File[] dirs = file.listFiles(new FileFilter() { @Override public boolean accept(File f) { return f.isDirectory(); } }); for(File dir:dirs){ File[] fs2 = listHtmls(dir); int len = fs.length; fs = Arrays.copyOf(fs, fs.length+fs2.length); System.arraycopy(fs2, 0, fs, len, fs2.length); } return fs; }
抽取出来通用的算法
static File[] listFiles(File dir,final String ex){ File[] fs = dir.listFiles(new FileFilter() { @Override public boolean accept(File f) { return f.getName().endsWith(ex); } }); File[] dirs = dir.listFiles(new FileFilter() { @Override public boolean accept(File f) { return f.isDirectory(); } }); for(File directory : dirs){ int len = fs.length; File[] ffs = listFiles(directory, ex); fs = Arrays.copyOf(fs, fs.length+ffs.length); System.arraycopy(ffs, 0, fs, len, ffs.length); } return fs; }
相关文章推荐
- Java File类学习笔记4:自定义一个类,过滤指定扩展名的文件
- 黑马程序员-列出一个目录中所有指定文件,使用FilenameFilter类
- linux 下如何给一个普通用户有在指定目录下有创建文件的权限
- 通过find命令寻找文件并拷贝到一个指定目录方法详解
- 并发删除指定目录下指定扩展名的文件
- 分享下java 读取目录及子目录下指定文件名的路径 并放到一个List数组里面返回遍历和写到文件里
- 做了一个浏览指定文件格式的 TreeView(方便查看Source目录下的源码)
- 将上传文件保存到指定目录的一个java源代码
- 用java写了一个实用的类----递归的拷贝给定目录的.java文件到指定的一个文件中
- linux面试题:删除一个目录下的所有文件,但保留一个指定文件
- 一个使用多线程删除指定目录及子目录下所有指定文件的Java程序(源码)
- java 读取目录及子目录下指定文件名的路径 并放到一个List数组里面返回遍历和写到文件里
- ASP检索网站指定目录文件的算法与应用方向
- 获取一个目录下的名称符合一定要求的全部文件+目录,可以防止没有必要的文件被传入系统。
- Java实现将目录下指定类型文件全部删除_FileFilter文件过滤
- 将一个指定目录下的java文件的绝对路径,存储到一个文本中
- 指定目录下的java文件存储到一个Txt文本文件中
- 在指定目录新建一个指定文件
- 创建文件时,提示找不见指定的路径,那是因为没有创建目录导致的
- Jsoup学习笔记6之File类操作文件:获取指定目录下面,指定扩展名(.saz)的文件,并在对应的文件夹下生成同名的csv文件。