File类

文件和目录(文件夹)路径名的抽象表示形式
对文件和文件夹进行增、删、获取、判断、遍历、获取大小操作

file:文件
directory:文件夹、目录
path:路径

静态成员变量:

static char pathSeparatoChar 与系统有关路径分隔符

路径分隔符(path下):
;(Windows) :(Linux)

static char separatorChar 与系统有关的默认名称分隔符

默认名称分隔符(文件名称分隔符):
Linux / (正斜杠)
windows (反斜杠)
"C:" + File.separator + "develop " + File.separator + " a "
(Windows下:C:developa)
(Linux下:C:/develop/a)

绝对路径:一个完整的路径
以盘符(c:, D:)开始的路径

相对路径:是一个简化的路径
相对于当前项目的根目录

构造方法

File(String pathname)
image.png

    private static void show01() {
        File f1 = new File("E:\\A JI\\program\\java\\idea projects\\learn06");
        System.out.println(f1);

    }
    
    output:
    E:\A JI\program\java\idea projects\learn06

File(String parent, String child)
parent:父路径
child:子路径
作用:路径被拆分为父、子路径,可以单独书写,使用起来方便、灵活
image.png
output~C:a.txt

File(File parent, String child)
作用:
使用路径灵活
父路径为File类型,可以使用File类对路径进行一些操作

    private static void show03() {
        File parent = new File("C:\\");
        File file = new File(parent, "a.txt");
        System.out.println(file);
    }

常用方法

获取功能的方法

image.png

public String getAbsolutePath()
返回绝对路径
image.png

public String getPath()
返回路径(绝对返回绝对,相对返回相对)
image.png
File中toString方法就是调用getPath方法

public String getName()
返回File表示的文件或目录的名称(传递路径的结尾部分)
image.png

public long length()
构造方法指定的文件的大小,字节为单位

  1. 文件夹无大小概念
  2. 若构造方法传递路径不存在,返回0

image.png

判断功能的方法

image.png

public boolean exists()
File表示的文件或目录是否实际存在
image.png

public boolean isDirectory()
用于判断构造方法中给定路径是否以文件夹结尾

public boolean isFile()
用于判断构造方法中给定路径是否以文件结尾

isDirectory()与isFile()

  1. 二者互斥
  2. 路径必须存在(不存在均返回false,需提前exists判断)

image.png

创建删除功能的方法

image.png

public boolean createNewFile()
仅当该名称文件不存在时,创建一个新文件(不能创建文件夹
image.png
image.png

public boolean mkdir()
创建单级空文件
image.png

public boolean mkdirs()
既可以创建单级空文件,也可以创建多级空文件
image.png

即使写上文件格式,也是创建此名字的文件夹
image.png
image.png

文件夹存在,不创建并返回false,构造方法中给出的路径不存在也返回false并且路径错误不会创建

public boolean delete()
可以删除构造方法中路径给出的文件夹/文件
image.png
直接在硬盘删除文件/文件夹,不经过回收站,删除需要谨慎

目录的遍历

image.png

public String[] list()
返回String数组,包含File目录中所有子文件和目录(包括隐藏的)

public File[] listFiles()
遍历构造方法中给的目录,会获取目录中所有文件/文件夹,并封装成为一个File对象,对个File对象存储到File数组中


waikiki
4 声望2 粉丝