Java基础学习笔记
File 的高级获取功能
String[] list()
返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录
示例
import java.io.File; class FileDemo9 { public static void main(String[] args) { //获取E:下所有目录或者文件名称 File file=new File("E:\\");//1、构建文件对象 String[] fileNames=file.list();//2、获取E:下所有子目录或者子文件的名称 for (String filename : fileNames) {//3、遍历打印输出 System.out.println(filename); } } } |
File[] listFiles()
返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。
示例
import java.io.File; class FileDemo10{ public static void main(String[] args) { File file=new File("E:\\"); File[] files= file.listFiles();//获取这个目录下的子目录或者是子文件 for (File file2 : files) { //遍历 if (file2.isFile()) {//判断是否是文件 if (file2.getName().endsWith(".txt")) { //判断是否是.txt文件 System.out.println(file2); } } } } } |
运行结果
FileFilter接口 过滤器 boolean accept(Filepathname) 确定过滤规则
示例
import java.io.File; import java.io.FileFilter; class FileDemo11{ public static void main(String[] args) { File file=new File("E:\\"); //根据过滤器获取这个目录下的子目录或者是子文件 File[] files= file.listFiles(new MyFilter()); for (File file2 : files) {//遍历files数组 System.out.println(file2); } } } //自定义过滤器类 class MyFilter implements FileFilter { @Override public boolean accept(File file) { if (file.isFile()) {//查找后缀为.txt的文件,找到返回true,否则为false if (file.getName().endsWith(".txt")) { return true; } } return false; } } |
运行结果
Java基础学习笔记续集