listFiles方法以及文件过滤器
1.获取当前文件对象所表示的路径下的所有文件或文件夹名称(字符串)
public static void method01(){ File file=new File("E:\\java"); //获取当前文件对象所表示的路径下的所有文件或文件夹名称(字符串) String[] files=file.list(); for(String s:files){ System.out.println(s); } }
2.获取当前文件对象所表示的路径下的所有文件或文件夹对应的file对象
public static void method02(){ File file=new File("E:\\java"); //获取当前文件对象所表示的路径下的所有文件或文件夹对应的file对象 File[] files=file.listFiles(); for(File f:files){ System.out.println(f); } }
注意:在获取指定目录下的文件或者文件夹时必须满足下面两个条件
1,指定的目录必须是存在的,
2,指定的必须是目录。否则容易引发返回数组为null,出现NullPointerException
文件过滤器:通过listfiles方法,可以获取到一个目录下的所有文件和文件夹,通过某个条件来进行筛选。
可以自定义文件过滤器,自己编写条件,返回值是boolean
例如,筛选所选目录中的java文件
public class MyFileter implements FileFilter { public boolean accept(File pathname) { return pathname.getName().toLowerCase().endsWith(".java"); } }
public static void method03(){ File file=new File("E:\\java"); File[] files=file.listFiles(new MyFileter()); for(File f:files){ System.out.println(f); } }