1.构造方法

1.根据路径名字符串创建文件对象:
File(String pathname)
2.根据父路径字符串和子路径字符串创建文件对象:
File(String parent, String child)
3.根据父抽象路径和子路径字符串创建文件对象:
File(File parent, String child)

2.绝对路径和相对路径

1.绝对路径从盘符开始
File file1 = new File("D:\\itheima\\a.txt")
2.相对路径:相对当前项目下的路径

File file2 = new File("a.txt");
File file3 = mew File("模块名\\a.txt");

3.File类创建功能

        //public boolean creatNewFile() 创建一个新文件
            //注意点:
            //1.如果文件已经存在则创建失败返回false 反之返回 true
            //2.creatFile()方法不管参数有没有后缀都只能创建文件 不能创建文件夹
        File file1 = new File("D:\\JavaWorkSpace\\fileDemo\\aaa");
        file1.createNewFile();
        //创建单级文件夹
        file1.mkdir();

        //创建多级文件夹
        file1.mkdirs();

4.删除方法

        //删除文件
            //只能删除文件和空文件夹
        file1.delete();

5.高级获取方法

public File[] listFiles() 返回此抽象路径目录中的文件和目录中的File对象数组

        File file = new File("C:\\");
        File[] files = file.listFiles();
        for (File f : files) {
            System.out.println(f);
        }

1.当调用者不存在时,返回null
2.当调用者是一个文件时,返回null
3.当调用者是一个空文件夹时,返回一个长度为0的数组
4.当调用者是一个有内容的文件夹时,将里面所有文件和文件夹的路径放在File数组中返回
5.当调用者是一个有隐藏文件的文件夹时,将里面所有文件和文件夹的路径放在File数组中返回,包含隐藏内容
6.当调用者是一个需要权限才能进入的文件夹时,返回null

File递归删除多层文件

    public static void del(File file){
        File[] files = file.listFiles();
        for (File f : files) {
            //判断是不是文件
            if (f.isFile()) {
                f.delete();
            } else {
                //判断是文件夹就直接递归
                del(f);
            }
        }
        file.delete();
    }