一、File类
1、概述
- 该类主要用于文件和目录的创建、文件的查找和文件的删除等
- File对象代表磁盘中实际存在的文件和目录。通过以下构造方法创建一个File对象
2、创建File类实例三种方式
- 通过给定的父抽象路径名和子路径名字符串创建一个新的File实例
File(File parent, String child);
- 通过将给定路径名字符串转换成抽象路径名来创建一个新 File 实例
File(String pathname);
- 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例
File(String parent, String child);
3、File类的主要方法
file.getAbsolutePath();
file.getPath();
file.getName();
file.length();
file.getParent();
file.exists();
file.isDirectory();
file.isFile()
file.createNewFile();
file.delete();
file.mkdir();
file.mkdirs();
file.delete();
二、不确定父路径是否存在的情况下创建文件(代码演示)
/*
* 当不知道父路径是否存在的情况下创建一个文件
* */
public class 不确定父路径是否存在的情况下创建文件 {
public static void main(String[] args) throws IOException {
//1、创建一个文件的实例对象
java.io.File file = new java.io.File("C:\\A1\\A2\\a.txt");
File parentFile = file.getParentFile();
//2、判断父路径是否存在
if (!parentFile.exists()){
//3、父路径不存在时创建
parentFile.mkdirs();
}
//4、创建目标文件
file.createNewFile();
}
}
三、文件的遍历以及过滤
1、遍历文件的名称
public class 遍历文件名称 {
public static void main(String[] args) {
//创建一个文件实例
File file = new File("D:\\Program Files (x86)");
//得到文件夹下的文件名数组
String[] list = file.list();
//遍历文件夹下的文件
for (String name:list) {
System.out.println(name);
}
}
}
- 运行结果

2、遍历文件的绝对路径
public class 遍历文件的绝对路径 {
public static void main(String[] args) {
//创建一个文件实例
File file = new File("D:\\Program Files (x86)");
//得到文件下文件对象数组
File[] files = file.listFiles();
for (File fileName : files) {
System.out.println(fileName.getAbsolutePath());
}
}
}
}
- 运行结果

3、文件的过滤
public class 文件的过滤 {
public static void main(String[] args) {
//创建一个文件实例
File file = new File("D:\\Program Files (x86)");
//以文件名称作为条件进行过滤
File[] fileArray = file.listFiles(new FilenameFilter()
public boolean accept(File dir, String name) {
System.out.println(dir+"---->"+name);
//过滤条件,返回值为false的将被过滤不被输出
if (name.equals("DingDing")||name.equals("FormatFactory")){
return false;
}
return true;
}
});
for (File arr : fileArray) {
System.out.println("@"+arr.getName());
}
}
}
}
- 运行结果
