java IO流: File类
File类
-
java.io.File类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。 -
是一个与系统无关的类,任何操作系统都可以使用这个类中的方法
-
四个静态成员变量:
-
static String pathSeparator与系统有关的路径分隔符,为了方便,它被表示为一个字符串
static char pathSeparatorChar与系统有关的路径分隔符windows: 分号
;Linux:冒号: -
static String separator与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串
static char separatorChar与系统有关的默认名称分隔符windows: 反斜杠
\Linux:斜杠/
-
-
路径:
- 绝对路径:是一个完整的路径,以盘符开始的路径
- 相对路径:是一个简化的路径;相对指的是相对于当前项目的根路径
- 路径不区分大小写
- 文件名称分隔符Windows使用反斜杠,\是转义字符,\=\,所以要写两个\
构造方法
File(String pathname)通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。- 参数:String pathname 字符串路径名称
- 路径可以以文件结尾,也可以以文件夹结尾
- 路径可以是相对路径,也可以是绝对路径
- 路径可以存在,也可以不存在
- 创建File对象,只是把字符串路径封装为File对象,不考虑路径的真假情况
- 参数:String pathname 字符串路径名称
File(String parent, String child)根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。- parent 路径名字符串用于表示目录,child 路径名字符串用于表示目录或文件
- 父路径和子路径可以单独书写,使用起来非常灵活,父路径和子路径都可以变化
File(File parent, String child)根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。- parent 抽象路径名用于表示目录,child 路径名字符串用于表示目录或文件
- 父路径和子路径可以单独书写,使用起来非常灵活,父路径和子路径都可以变化
- 父路径是File类型,可以使用File的方法对路径进行一些操作,再使用路径创建对象
常用方法
获取功能的方法
String getAbsolutePath():返回此抽象路径名的绝对路径名字符串。- 获取构造方法中传递的路径
- 无论路径是绝对的还是相对的,返回的都是绝对路径
String getPath(): 将此抽象路径名转换为一个路径名字符串。- 获取构造方法中传递的路径
- toString方法调用的就是getPath方法
String getName():返回由此抽象路径名表示的文件或目录的名称。- 获取的是构造方法传递的路径的结尾部分(文件/文件夹)
long length(): 返回由此抽象路径名表示的文件的长度。- 获取的是构造方法指定的文件的大小,以字节为单位
- 文件夹没有大小概念,不能获取文件夹大小
- 如果构造方法中给出的路径不存在,那么返回0
判断功能的方法
boolean exists():测试此抽象路径名表示的文件或目录是否存在boolean isDirectory():测试此抽象路径名表示的文件是否是一个目录- 用于判断构造方法中给定的路径是否以文件夹结尾
- 使用前提:路径必须是存在的,否则返回false
boolean isFile(): 测试此抽象路径名表示的文件是否是一个标准文件- 用于判断构造方法中给定的路径是否以文件结尾
- 使用前提:路径必须是存在的,否则返回false
创建删除功能的方法
boolean createNewFile():当且仅当不存在具有此抽象路径名指定名称的文件时,创建一个新的空文件- 创建文件的路径和名称 在构造方法中给出
- 文件不存在,创建文件,返回true;文件存在,不会创建,返回false
- 只能创建文件,不能创建文件夹
- 创建文件的路径必须存在,否则会抛出异常
- 该方法声明时抛出了IoException异常,需要处理这个异常,throws或trycatch
boolean delete():删除此抽象路径名表示的文件或目录- 文件或文件夹删除成功,返回true
- 文件夹中有内容,返回false
- 构造方法中路径不存在,返回false
- 删除时直接在硬盘删除文件,不会在回收站,删除要谨慎
boolean mkdir():创建此抽象路径名指定的目录- 只能创建单级空文件夹
- 创建文件夹的路径必须存在,否则返回false
boolean mkdirs():创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。- 既能创建单级空文件夹,也能创建多级空文件夹
目录的遍历
String[] list():返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录File[] listFiles(): 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。- 遍历的是构造方法中给出的目录
- 如果路径不存在,返回null
- 如果路径不是一个目录,返回null

浙公网安备 33010602011771号