1. 文件
1.1 什么是文件 610

1.2 文件流 610

2. 常用的文件操作 611
2.1 创建文件对象相关构造器和方法 611
2.1.1 相关方法 611
new File(String pathname) //根据路径构建一个File对象
new File(File parent, String child) //根据父目录文件+子路径构建
new File(String parent,String child) //根据父目录+子路径构建
createNewFile //创建新文件


2.1.2 应用案例演示
请在e盘下,创建文件news1.txt、news2.txt、 news3.txt, 用三种不同方式创建
代码在com.stulzl.file.包中
FileCreate
package com.stulzl.file;
import org.junit.jupiter.api.Test;
import java.io.File;
import java.io.IOException;
//创建文件对象相关构造器和方法  611
//请在e盘下,创建文件news1.txt、news2.txt、 news3.txt, 用三种不同方式创建
public class FileCreate {
    public static void main(String[] args) {
    }
    //方式1 new File(String pathname) //根据路径构建一个File对象
    @Test  //受用Test这个系统提供的方法直接可以运行程序
    public void create01(){
        String filePath = "E:\\java学习\\初级\\course129\\news1.txt";//写创建文件的路径
        File file = new File(filePath);//这是系统提供的方法,创建一个file对象
        try {
            file.createNewFile();//这个也是系统提供的方法,创建文件news1.txt
            System.out.println("文件创建成功");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    //方式2 new File(File parent, String child) //根据父目录文件+子路径构建
    @Test
    public void create02(){
        File parentFile = new File("E:\\java学习\\初级\\course129\\");//父文件路径
        String fileName = "news2.txt";//我们要创建的文件名字
        //这里的 file 对象,在 java 程序中,只是一个对象
        //只有执行了 createNewFile 方法,才会真正的,在磁盘创建该文件
        File file = new File(parentFile, fileName);//parentFile父文件,fileName被创建文件
        try {
            file.createNewFile();
            System.out.println("文件创建成功");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    //方式3  new File(String parent,String child) //根据父目录+子路径构建
    @Test
    public void create03(){
        String parentFile = "E:\\java学习\\初级\\course129\\";//父目录
        String fileName = "news3.txt";//被创建文件名(提示没路径就写名字)
        File file = new File(parentFile, fileName);
        try {
            file.createNewFile();
            System.out.println("文件创建成功");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}3. 获取文件的相关信息 612
getName(文件名字)、getAbsolutePath(绝对路径)、 getParent (父级目录)、length(文件字节大小)、 exists(文件是否存在)、isFile(是不是文件)、isDirectory(是不是一个目录)

3.1 应用案例演示
如何获取到文件的大小,文件名,路径,父File, 是文件还是目录(目录本质也是文件,一种特殊的文件),是否存在
代码在com.stulzl.file_information.包中
FileInformation
package com.stulzl.file_information;
import org.junit.jupiter.api.Test;
import java.io.File;
//获取文件的相关信息  612
//如何获取到文件的大小,文件名,路径,父File,   612
// 是文件还是目录(目录本质也是文件,一种特殊的文件),是否存在
public class FileInformation {
    public static void main(String[] args) {
    }
    //获取文件信息方法
    @Test
    public void info(){
        //先创建文件对象
        File file = new File("E:\\java学习\\初级\\course129\\news1.txt");
        //getName(文件名字)、getAbsolutePath(绝对路径)、 getParent (父级目录)、
        // length(文件字节大小)、 exists(文件是否存在)、isFile(是不是文件)
        // 、isDirectory(是不是一个目录)
        //调用相应的方法,得到对应信息
        //获取文件名
        System.out.println("文件名="+file.getName());//文件名=news1.txt
        //获取绝对路径
        System.out.println("绝对路径="+file.getAbsolutePath());
        //获取文件父级文件目录
        System.out.println("父级文件目录="+file.getParent());
        //文件大小
        System.out.println("文件大小(字节)="+file.length());
        //判断文件是否存在
        System.out.println("文件是否存在="+file.exists());//true
        //是不是一个文件
        System.out.println("是不是一个文件="+file.isFile());//true
        //是不是一个目录
        System.out.println("是不是一个目录="+file.isDirectory());//false
    }
}4. 目录的操作和文件删除 613
mkdir创建一级目录、mkdirs创建多级目录、delete删除空目录或文件

4.1 应用案例演示 613
1)判断E:\\java学习\\初级\\course129\\news1.txt 是否存在,如果存在就删除
2)判断D:\\demo02是否存在,存在就删除,否则提示不存在
3)判断D:\\demo\\a\\b\\c目录是否存在,如果存在就提示已经存在,否则就创建
代码在com.stulzl.file_directory.包中
Directory_
package com.stulzl.file_directory;
import org.junit.jupiter.api.Test;
import java.io.File;
//目录的操作和文件删除  613
//1)判断E:\\java学习\\初级\\course129\\news1.txt 是否存在,如果存在就删除
//2)判断D:\\demo02是否存在,存在就删除,否则提示不存在
//3)判断D:\\demo\\a\\b\\c目录是否存在,如果存在就提示已经存在,否则就创建
public class Directory_ {
    public static void main(String[] args) {
    }
    //1)判断E:\\java学习\\初级\\course129\\news1.txt 是否存在,如果存在就删除
    @Test
    public void m1(){
        String filePath = "E:\\java学习\\初级\\course129\\news1.txt";
        File file = new File(filePath);
        if(file.exists()){//判断文件是否存在
            if(file.delete()){//调用删除方法
                System.out.println(filePath+"删除成功");
            }else{
                System.out.println(filePath+"删除失败");
            }
        }else{
            System.out.println("该文件不存在");
        }
    }
    //2)判断D:\\demo02是否存在,存在就删除,否则提示不存在
    //提示在java编程中,目录也被当作文件看待
    @Test
    public void m2(){
        String filePath = "D:\\demo02";
        File file = new File(filePath);
        if(file.exists()){//判断目录是否存在
            if(file.delete()){//调用删除方法
                System.out.println(filePath+"删除成功");
            }else{
                System.out.println(filePath+"删除失败");
            }
        }else{
            System.out.println("该目录不存在");
        }
    }
    //3)判断D:\\demo\\a\\b\\c目录是否存在,如果存在就提示已经存在,否则就创建
    @Test
    public void m3(){
        String directoryPath = "D:\\demo\\a\\b\\c";
        File file = new File(directoryPath);
        if(file.exists()){//判断目录是否存在
            System.out.println(directoryPath+"存在");
        }else{
            if(file.mkdirs()){//创建多级目录
                System.out.println(directoryPath+"创建成功");
            }else{
                System.out.println(directoryPath+"创建失败");
            }
        }
    }
}









