进阶day08-文件过滤器的基本使用
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
package com.inmind.filefilter03;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
/*
|
||||
文件过滤器的基本使用
|
||||
1.文件过滤器的相关的api:
|
||||
File[] listFiles(FileFilter filter) 返回一个抽象路径名数组,表示由此抽象路径名表示的满足指定过滤器的目录中的文件和目录。
|
||||
|
||||
2.@FunctionalInterface
|
||||
public interface FileFilter
|
||||
抽象方法的介绍:
|
||||
boolean accept(File pathname)中的参数pathname是一个文件或者文件夹对象,它就是当前调用listFiles方法的文件夹中的每个子元素,
|
||||
每个子元素会依次进入到accept方法中,执行得到结果,如果结果是true就保存在返回值(File[] )中,否则就直接过滤掉。
|
||||
|
||||
3.过滤器的基本使用步骤:
|
||||
1.创建一个文件夹对象
|
||||
2.先定义一个符合业务的文件过滤器实现类
|
||||
3.调用listFiles(FileFilter filter)
|
||||
|
||||
|
||||
需求:将指定的目录中的一级子内容中,使用文件过滤器,直接获取到一级目录的.txt后缀的文件
|
||||
*/
|
||||
public class FileFilterDemo13 {
|
||||
public static void main(String[] args) {
|
||||
//1.创建一个文件夹对象
|
||||
File file = new File("D:\\io_test");
|
||||
//2.先定义一个符合业务的文件过滤器实现类
|
||||
FileFilterImpl fileFilter = new FileFilterImpl();
|
||||
//3.调用listFiles(FileFilter filter)
|
||||
File[] files = file.listFiles(fileFilter);
|
||||
|
||||
for (File f : files) {
|
||||
System.out.println(f.getName());
|
||||
}
|
||||
}
|
||||
}
|
||||
11
javaSE-day08/src/com/inmind/filefilter03/FileFilterImpl.java
Normal file
11
javaSE-day08/src/com/inmind/filefilter03/FileFilterImpl.java
Normal file
@@ -0,0 +1,11 @@
|
||||
package com.inmind.filefilter03;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileFilter;
|
||||
//文件过滤器的目标:目录的.txt后缀的文件
|
||||
public class FileFilterImpl implements FileFilter {
|
||||
@Override
|
||||
public boolean accept(File f) {
|
||||
return f.isFile() && f.getName().endsWith(".txt");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user