Java进阶五—File

Java进阶API第五章

一.绝对路径和相对路径 

1. 引言:

文件要区别绝对路径和相对路径,在Win系统中的文件路径和Linux/nuix系统中的路径是不一样的。

2. 绝对路径:

 如.D:\下载\网易云音乐\CloudMusic\cloudmusic.exe

 Java进阶五—File_第1张图片

3. 相对路径:

要点:我在哪?相对对于谁? 

如.我在D:\下载\网易云音乐,相对于D:\下载\网易云音乐\CloudMusic\cloudmusic.exe,是父目录(上层目录·)。Java进阶五—File_第2张图片Java进阶五—File_第3张图片

二. File类 

1.构造方法 

 Java进阶五—File_第4张图片

新手最常用的是第二个。

File file = new File("绝对路径");

Java进阶五—File_第5张图片

可以看出如果不填绝对路径或不对,那么为空,抛出空指针异常; 

File file = new File("D:\\下载\\网易云音乐\\CloudMusic\\cloudmusic.exe");

粘贴复制绝对路径后,你会发现路径用\\表示,有原因有一条\表示转义字符。 

  • 对于UNIX平台,绝对路径名的前缀始终为"/" 。 相对路径名没有前缀。 表示根目录的抽象路径名具有前缀"/"和空名称序列。
  • 对于Microsoft Windows平台,包含驱动器说明符的路径名的前缀由后面跟着":"的驱动器号组成,如果路径名是绝对的,则可能后跟"\\" 。 UNC路径名的前缀为"\\\\" ; 主机名和共享名称是名称序列中的前两个名称。 没有指定驱动器的相对路径名没有前缀

2.方法


        File file = new File("D:\\下载\\网易云音乐\\CloudMusic\\cloudmusic.exe");

        // 1.getParent()
        // 返回此抽象路径名的父 null的路径名字符串,如果此路径名未命名为父目录,则返回null。
        System.out.println(file.getParent());

        // 2.isFile()
        // 测试此抽象路径名表示的文件是否为普通文件,如果是判断文件夹用isDirectory();
        System.out.println(file.isFile());

        // 3.length()
        // 返回由此抽象路径名表示的文件的长度。
        System.out.println(file.length());

Java进阶五—File_第6张图片

        File dir = new File("D:\\下载");

        // 4.list() 
        // 返回一个字符串数组,命名由此抽象路径名表示的目录中的文件和目录。
        String[] list = dir.list();

        for (String name: list) {
            System.out.println(name);
        }

Java进阶五—File_第7张图片

Java进阶五—File_第8张图片

        // 5.getName()获取文件名字
        System.out.println(number.getName());

        // 6.exists()件是否真实存在
        System.out.println(number.exists());

Java进阶五—File_第9张图片Java进阶五—File_第10张图片

        // 7.createNewFile()指定要创建的文件路径和名称
        // 请注意,在尝试创建新文件时,您需要处理IOException异常。
        // 这是因为在创建文件时可能会发生一些错误,比如文件路径无效或权限不足。
        String dir = "D:\\File\\制定文件";

        try {
            // 创建File对象
            File file = new File(dir);

            // 创建新文件
            boolean created = file.createNewFile();
            if(created) {
                System.out.println("文件创建成功!");
            }else {
                System.out.println("文件已存在,无需创建。");
            }

        } catch (IOException e) {
            e.printStackTrace();
        }

Java进阶五—File_第11张图片Java进阶五—File_第12张图片

        // 8.mkdir()创建一个新目录

        // 指定要创建的目录路径
        String dir = "D:\\File\\fuck";

        // 创建File对象
        File file = new File(dir);

        // 创建新目录
        boolean created = file.mkdir();

        if(created) {
            System.out.println("目录创建成功!");
        }else {
            System.out.println("目录已存在,无需创建。");
        }

Java进阶五—File_第13张图片Java进阶五—File_第14张图片

        // 9.delete()删除文件或目录
        // 指定要删除的文件或目录路径
        String path = "D:\\File\\fuck";

        // 创建File对象
        File file = new File(path);

        // 判断文件或目录是否存在
        if(file.exists()) {
            // 删除文件或目录
            boolean delete = file.delete();

            // 判断文件是否被删除
            if(delete) {
                System.out.println("文件或目录删除成功!");
            }else {
                System.out.println("文件或目录删除失败。");
            }

        }else {
            System.out.println("文件或目录不存在,无需删除。");
        }

Java进阶五—File_第15张图片Java进阶五—File_第16张图片

你可能感兴趣的:(前端)