java库中的file.listfiles()进行过滤

在我们调用java库中的File.listFiles()可以列出所有所有文件。其实还有一个方法可以对文件进行过滤,而其中需要实现接口FileFilter。jdk的文档中的说明看的不是很懂。在网上搜索了一下,把具体的使用方法和大家共享

1
2
3
4
5
6
7
8
9
10
11
12
13
public class myFileFilter implements FileFilter{    
        @Override  
        public boolean accept(File pathname) {  
//拿到文件名
            String filename = pathname.getName().toLowerCase();
//是否包含指定字符  
            if(filename.contains(".txt")){  
                return false;  
            }else{  
                return true;  
            }  
        }  
    }

使用方法为

1
2
File file = new File("D:\");  //路径
File[] files = file.listFiles(new myFileFilter());