本文实例讲述了Java使用FilenameFilter查找出目录下指定后缀的文件。分享给大家供大家参考,具体如下:
在项目中需要查找指定目录下特定后缀的文件,在jdk官网上查看资料时找到了FilenameFilter这个类,怎么用也写了,但是就是没给个例子,对有些人实在有些不方便,这也是写这篇文章的初衷,虽然简单但希望能帮到需要的小伙伴们
下面直接入正题,给出demo程序:
package net.csdn.johnhuster; import java.io.File; import java.io.FilenameFilter; public class FileNameFilterDemo { //内部类 public class FileFilter implements FilenameFilter { private String filterRule; public FileFilter(String filter) { this.filterRule = filter; } @Override public boolean accept(File dir, String name) { if(name.lastIndexOf('.')>0) { // get last index for '.' char int lastIndex = name.lastIndexOf('.'); // get extension String str = name.substring(lastIndex); // match path name extension if(str.equals(this.filterRule)) { return true; } } return false; } public static void main(String[] args) { File f = null; File[] paths; FileNameFilterDemo fileFilter = new FileNameFilterDemo(); try{ // create new file f = new File("d:\\fileList"); // 文件文件名字过滤器 FilenameFilter fileNameFilter = fileFilter .new FileFilter(".txt") ; // returns pathnames for files and directory paths = f.listFiles(fileNameFilter); // for each pathname in pathname array for(File path:paths){ // prints file and directory paths System.out.println(path); } }catch(Exception e) { // if any error occurs e.printStackTrace(); } } }
更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java文件与目录操作技巧汇总》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。