java.io.File类

java.io.File类
文件和目录路径名的抽象表示形式
java把电脑中的文件和文件夹(目录)封装为了一个File类,可使用File类对文件和文件夹进行操作
可使用File类的方法实现:
创建一个文件或文件夹
删除文件或文件夹
判断文件或文件夹是否存在
对文件夹进行遍历
获取文件夹的大小
File类是一个与系统无关的类,任何的操作系统都可以使用File类中的方法

静态成员变量

String pathSeparator = File.pathSeparator;//系统路径分隔符,Windows系统是分号,Linux系统是冒号
        String separator = File.separator;//文件名分隔符,Windows系统是反斜杠\,Linux系统是正斜杠/
        //考虑兼容性,路径不能写死
        /*
        D:\demo\aaa\a.txt  windows
        D:/demo/aaa/a.txt  linux
        "D:"+File.separator+"demo"+File.separator+"aaa"+File.separator+"a.txt"
         */

绝对路径和相对路径

  • 绝对路径:完整的路径,以盘符开始
    d:\a.txt
    D:\demo\aaa\a.txt
  • 相对路径:简化的路径
    指相对于当前项目的根目录,如果使用当前项目的根目录,则当前项目根目录可以省略

#路径不区分大小写
#反斜杠是转义字符,两个反斜杠代表一个普通反斜杠

构造方法:

File(String pathname) 通过将给定路径名字符串转换成抽象路径名来创建一个新File类

  • String pathname:字符串的路径名称
    路径可以文件夹、文件结尾
    路径可以是相对或绝对的路径
    路径可存在也可不存在(创建File对象,只是把字符串路径封装为File对象,不考虑路径真假)
private static void show01(){
        //真实存在的路径
        File f1 = new File("E:\\demowin\\src\\o3Stream");
        System.out.println(f1);//输出:E:\demowin\src\o3Stream
        //不存在的路径
        File f2 = new File("E:\\demowin\\src\\o3Stream\\a.txt");
        System.out.println(f2);//输出:E:\demowin\src\o3Stream\a.txt
        //真实存在的路径
        File f3 = new File("a.txt");
        System.out.println(f1);//输出:a.txt
        //均输出路径名,原本创建的只是对象,输出时重写了Object类的toString()方法
    }

File(String parent,String child):根据parent路径字符串和child路径字符串创建一个新File实例

  • String parent:父路径
  • String child:子路径

使用灵活!!!
File(File parent,String child):根据parent抽象路径名和child路径名字符串创建一个新File实例
不光使用灵活,还可以用File方法对父路径进行一些操作,再使用路径创建对象

其他方法:

获取功能方法:

public String getAbsolutePath():返回此file的绝对路径名字符串

public String getPath():将此file转换为路径名字符串(获取传递的路径名字符串)
toString()方法调用的就是getPath()方法

public String getName():返回由此file表示的文件或目录的名称(l路径最后一级,不管是文件还是文件夹

public long length():返回由此file表示的文件的长度
获取的是构造方法指定的文件的大小,以字节为单位
文件夹没用大小概念,不能获得文加夹大小,也返回0
若构造方法给出的路径名不存在,length返回0

判断功能方法

public boolean exists():此File表示的文件或目录是否存在

public boolean isDirectory():此File表示是否为目录

public boolean isFile():此File表示的是否为文件

创建删除功能方法

public boolean createNewFile():当且仅当具有该名称的文件上不存在的时候,创建一个新的空文件

public boolean delete():删除由此File表示的文件或目录

public boolean mkdir():创建此File表示的目录

public boolean mkdir():创建此File表示的目录,包括任何必需但不存在的父目录

遍历功能

public String[] list():返回一个String数组,表示该File目录中所有子文件或目录

public File[] Filelists():返回一个File数组,表示该File目录中所有子文件或目录

发布了25 篇原创文章 · 获赞 2 · 访问量 334

猜你喜欢

转载自blog.csdn.net/qq_41628448/article/details/104528107