File类:
File类是文件和目录路径名的抽象表示形式。
即,Java中把文件或者目录(文件夹)都封装成File对象。也就是说如果我们要去操作硬盘上的文件,或者文件夹只要找到File这个类即可。
常用方法:
File(String pathname):创建一个File实例:
File file = new File("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\lili.txt");
boolean exists():测试此抽象路径名表示的文件或目录是否存在
file.exists()
boolean createNewFile():创建文件,前提是该文件不存在
file.createNewFile();
boolean delete():删除由此抽象路径名表示的文件或目录
file.delete()
String getPath():将路径名转换为路径字符串
file.getPath();
boolean isDirectory():判断路径名表示的是否为目录
file.isDirectory()
boolean isFile():判断是否是一个文件
file.isFile();
String[] list(): 返回一个字符串数组,列出当前文件夹下的所有文件和目录
String[] list = file.list();
File[] listFiles(): 返回一个路径名数组,只列出当前文件夹下的所有文件
File[] files = file.listFiles();
boolean mkdir():创建由此抽象路径名命名的目录
file.mkdir();
booleam mkdirs():创建由此抽象路径名命名的目录,包括不存在的父级目录
file.mkdirs();
boolean renameTo(File dest): 重命名该路径名表示的文件
renameTo(file);
String getAbsolutePath():返回绝对路径字符串形式
file.getAbsolutePath()
文件查找小案例:
功能:传入一个路径名,和想要查找的文件或文件后缀,查询出所有结果的完整路径。
分析:我们先判断这个路径下面是否有文件或文件夹,如果有的话判断是一个文件夹还是一个文件。是文件的话直接比较是否是自己查找的,如果是文件夹的话,运用递归的思想,继续传入方法,继续做同样的步骤即可。
代码实现:
public class Test2 { public static void main(String[] args) { // 我们想要在E盘查询所有的txt文件 findFile(new File("E:\\"), ".txt"); } private static void findFile(File target, String ext) { // 为空判断 if (target == null) { return; } // 是否为文件夹 if (target.isDirectory()) { File[] files = target.listFiles(); if (files != null) { for (File file : files) { findFile(file, ext); } } } else { if (target.getName().endsWith(ext)) { // 打印路径 System.out.println(target.getAbsolutePath()); } } } }