FileDemo4 获取一个目录中的所有子项
/**
* 获取一个目录中的所有子项
* 方法: File[] listFiles()
* 重载方法: File[] listFiles(FileFilter filter)
*/
public class FileDemo4 { public static void main(String[] args) { /* * 获取files目录中的所有内容 */ File dir = new File("."+File.separator+"files"); /* * boolean isFile() * 判断当前File表示的是否为文件 * boolean isDirectory() * 判断当前File表示的是否为目录 */ if(dir.isDirectory()){ //获取File表示的目录中的所有子项 File[] subs = dir.listFiles(); for (File sub:subs){ System.out.println(sub.getName()); } } } }
FileDemo5 获取一个目录中的部分子项
/**
* 获取一个目录中符合条件的部分子项
*
* File提供了一个重载的listFiles()方法:
* File[] listFiles(FileFilter filter)
*/
public class FileDemo5 { public static void main(String[] args) { File dir = new File("."+File.separator+"files"); //获取满足条件的目录或文件 File[] subs = dir.listFiles(new FileFilter(){ /* * accept 方法用于定义过滤规则 * 当给定的参数的File对象满足要求,方法应当返回true */ @Override /* * 实现accept抽象方法 * 定义规则:满足de字母开头,并且是一个文件,不是目录 */ public boolean accept(File file) { //获取文件对象的名字 String name = file.getName(); //判断名字是否以de开头 并且 是否满足是一个文件 return name.startsWith("de") && file.isFile(); } }); //遍历输出所有满足条件的文件 for(File sub:subs){ System.out.println(sub.getName()); } } }
时间: 2024-10-19 20:19:44