1、接口方法accept()中可以自行定义过滤规则
2、此外,FilenameFilter和FileFilter类似,也提供文件过滤功能
下面是FileFilter的一个应用案例,列出包含指定关键词的目录和文件
import
java.io.File;
import java.io.FileFilter;
public class KeywordFileFilter implements FileFilter {
private String keyword;
public KeywordFileFilter(String keyword) {
this .keyword = keyword;
}
public boolean accept(File pathname) {
return pathname.getName().toLowerCase().indexOf(keyword) >= 0 ;
}
/**
* 测试方法
*/
public static void main(String[] args) {
File path = new File( " c:/ " );
File[] list = path.listFiles( new KeywordFileFilter( " windows " ));
for ( int i = 0 ; i < list.length; i ++ ) {
System.out.println(list[i].getName());
}
}
}
import java.io.FileFilter;
public class KeywordFileFilter implements FileFilter {
private String keyword;
public KeywordFileFilter(String keyword) {
this .keyword = keyword;
}
public boolean accept(File pathname) {
return pathname.getName().toLowerCase().indexOf(keyword) >= 0 ;
}
/**
* 测试方法
*/
public static void main(String[] args) {
File path = new File( " c:/ " );
File[] list = path.listFiles( new KeywordFileFilter( " windows " ));
for ( int i = 0 ; i < list.length; i ++ ) {
System.out.println(list[i].getName());
}
}
}