文件过滤原则即从文件列表中遍历所有文件,并根据accept实现的过滤规则判断每一个文件是否满足过滤条件,若满足则将该文件存储到新的容器ArrayList中,最终将ArrayList以File数组的形式返回,即完成过滤过程,
1.FileFiter
文件过滤器接口
实现类重写抽象方法,一个参数:
package File;
import java.io.File;
import java.io.FileFilter;
public class ImplFileFilter implements FileFilter {
@Override
public boolean accept(File file) {
return false;
}
}
一般如下使用:
package File;
import java.io.File;
import java.io.FileFilter;
public class ImplFileFilter implements FileFilter {
@Override
public boolean accept(File file) {
return file.getName().endsWith(".java");
}
}
package File;
import java.io.File;
public class Demo05 {
public static void main(String[] args) {
File file = new File("G:\\Java\\a.tec");
File[] files = file.listFiles(new ImplFileFilter());//判断file 是否以.java结尾,如果是,则放到files数组
}
}
2.FileNameFiter
文件名称过滤器接口
实现类重写抽象方法:
package File;
import java.io.File;
import java.io.FilenameFilter;
public class ImpiFileNanmeFilter implements FilenameFilter {
@Override
public boolean accept(File file, String s) {
return false;
}
}
一般如下使用:
package File;
import java.io.File;
import java.io.FilenameFilter;
public class ImpiFileNanmeFilter implements FilenameFilter {
@Override
public boolean accept(File file, String s) {
return new File(file,s).getName().endsWith(".java");//判断file下的s是否以.java结尾,如果是,则放到files数组
}
}