File类的常用方法之判断功能

  1. public boolean isDirectory();
  • 判断这个File对象表示的是否是一个文件目录(要求这个File对象在硬盘中对应有真实存在的文件目录)
  • 如果这个时候这个File对象表示的文件目录在硬盘中对应的没有真实存在,这个时候这个方法的返回值也是false
  • 也就是判断此抽象路径名表示的是不是一个硬盘中真实存在的文件目录
  1. public boolean isFile();
  • 判断这个File对象是否表示一个文件(要求是表示一个硬盘中实际存在的文件)
  • 如果这个时候File对象表示的是一个文件,这个时候这个文件在硬盘中如果没有对应真实存在,这个时候返回值为false
  • 判断抽象路径名表示的是不是一个硬盘中一个真实存在的文件
  1. public boolean exists();
  • 判断当前对象在硬盘中是否存在对应的文件或者文件目录
  • 我们创建一个File对象的时候只是单纯的在内存方面创建了一个File对象
  • 判断这个File类对象的抽象路径名是否表示一个实际存在的文件或者文件目录
  1. public boolean canRead();
  • 判断是否可读
  • 这里是文件和文件目录都可以设置可读或者不可读
  1. public boolean canWrite();
  • 判断是否可写
  • 我们的文件夹也可以设置可读或者不可读
  1. public boolean isHidden();
  • 判断文件或者文件夹是否隐藏
  1. public boolean isAbsolute():
  • 测试这个抽象路径名是否是绝对路径的形式

关于这几个方法我们进行一个测试:

package File类.常用方法.判断功能;

import java.io.File;

public class Demo1 {
    public static void main(String[] args) {
        File file = new File("D:\\");
        System.out.println(file.isAbsolute());
        System.out.println(file.isDirectory());
        System.out.println(file.canRead());
        System.out.println(file.canWrite());
        System.out.println(file.isHidden());
        System.out.println(file.isFile());
        System.out.println(file.exists());
        //这个时候只有isFile()方法的返回值为false,这个时候我们的file对象表示的是一个文件夹,而不是一个文件
    }
}
补充:

我们创建一个File对象的时候只需要给这个File对象的构造方法中传入一个路径就可以,这路径可以是真实在硬盘中存在的,也可以是硬盘中没有的,这个时候我们将我们传入File类构造方法中的路径就称之为抽象路径

  • 在这个抽象路径之下可以真实存在文件,也可以不存在文件