IO流FilenameFilter文件过滤器
FilenameFilter (接口):用于实现此接口的类的实例用于过滤文件名。(简称 过滤器)
包目录:java.io.FilenameFilter
只有一个方法 accept(file,name)
boolean accept(File dir, String name)
测试指定文件是否应包含在文件列表中。
参数 dir
- 找到该文件的目录。name
- 文件的名称。
结果 true
当且仅当该名称应包含在文件列表中时; false
否则。
例:
import java.io.File; import java.io.FilenameFilter; /* 文件过滤器 */ public class FilenameFilterDemo01 { public static void main(String[] args) { //创建操作对象源 File dir=new File("D:"+File.separator+"FilesTest");
//使用File类listFiles()方法将匹配的文件添加到File[]数组 File[] files=dir.listFiles(new FilenameFilter() { /* 匿名内部类 覆写java.io.FilenameFilter中的accept(File dir,Strign name)方法填写过滤规则 */ @Override public boolean accept(File dir, String name) {
//传入没传入一个文件和名字判断是不是文件和是否一 ".txt" 字符串结尾 return new File(dir,name).isFile() && name.endsWith(".txt"); } });
//遍历文件 for (File fs : files) { System.out.println(fs); } } }