import java.io.File;
import java.io.FilenameFilter;
import java.util.Date;
public class FileListFilter implements FilenameFilter{
private String name;
private String extension;//extension 分期,范围,延长
public FileListFilter(String name, String extension){//默认构造器
this.name = name;
this.extension = extension;
}
public boolean accept(File directory, String filename) {//继承FilenameFileter的方法
// 测试指定文件是否应该包含在某一文件列表中
boolean fileOK = true;
if(name != null ){
fileOK = filename.startsWith(name);//测试此字符串是否以指定的前缀开始。
}
if(extension != null){
fileOK = filename.endsWith("." + extension);
}
return fileOK;
}
public static void main(String[] args) {
File myDir = new File("C:/3D片源");//建立路径 注意这里的路径与windows相反
FilenameFilter select = new FileListFilter("狗","avi");//以F开头,txt结尾的文件
File[] contents = myDir.listFiles(select);//contents意思为目录,构造一个File数组contents
//C:/ 把select过滤器给listFiles()方法
/**public File[] listFiles(FilenameFilter filter)
* 此方法的行为与 listFiles() 方法相同。
*/
//把所有满足条件目录打印出来
for(File file: contents){
System.out.println(file + "是一个" + (file.isDirectory()?"目录":"文件")
+ "最后修改时间\n" + new Date(file.lastModified()));
}
/**
* C:\3D片源\闪电狗(左右高清).avi是一个文件最后修改时间
* Tue Sep 01 10:03:14 CST 2009
*/
}
}
文件过滤FilenameFilter
最新推荐文章于 2022-04-03 11:06:36 发布