一、File类概述
File类用于封装一个路径,在创建File对象时,我们需要通过构造方法传入一个路径。这个路径可以指向一个文件,也可以指向一个目录。这个路径可以是绝对路径("C:\\xxx\\xxx"),也可以是相对路径("src\\demo01.java")。File类也提供了对文件或目录的一些常规操作。
注意:由于Windows操作系统的路径分隔符是"\"在Java中需要用"\\"表示"\";而Linux操作系统的路径分隔符是"/"。
二、File类的常用方法
方法申明 | 功能描述 |
---|---|
boolean exists() | 判断 File 对象对应的文件或目录是否存在,若存在则返回 ture,否则返 false |
boolean delete() | 删除 File 对象对应的文件或目录,若成功删除则返回 true,否则返回 false |
boolean createNewFile() | 当 File 对象对应的文件不存在时,该方法将新建一个此 File 对象所指定的新文件,若创建成功则返回true,否则返回 false |
String getName() | 返回 File 对象表示的文件或文件夹的名称 |
String getPath() | 返回 File 对象对应的路径 |
String getAbsolutePath() | 返回 File 对象对应的绝对路径(在 Unix/Linux 等系统上,如果路径是以正斜线开始,则这个路径是绝对路径,在Windows 等系统上,如果路径是从盘符开始,则这个路径是绝对路径) |
String getParent() | 返回 File 对象对应目录的父目录(即返回的目录不包含最后一级子目录) |
boolean canRead() | 判断 File 对象对应的文件或目录是否可读,若可读则返回 true,反之返回false |
boolean canWrite() | 判断 File 对象对应的文件或目录是否可写,若可写则返回 true,反之返四 false |
boolean isFile() | 判断 File 对象对应的是否是文件(不是目录),若是文件则返回 true,反之返回 false |
boolean isDirectory() | 判断 File 对象对应的是否是目录(不是文件),若是目录则返回 true,反之返回 false |
boolean isAbsolute() | 判断 File 对象对应的文件或目录是否是绝对路径 |
long lastMlodified() | 返回 1970年1月1日0时0分0秒到文件最后修改时间的毫秒值 |
long length() | 返回文件内容的长度 |
String[] list() | 列出指定目录的全部内容,只是列出名称 |
File listFiles() | 返回一个包含了 File 对象所有子文件和子目录的 File 数组 |
g
一、构造方法
方法 | 功能描述 |
File(String pathname) | 根据路径得到File对象 |
File(String parent,String child) | 根据目录和子文件/目录得到对象 |
File(File parent,String child) | 根据父File对象和子文件/目录得到对象 |
二、 创建功能
返回值 | 方法 | 功能描述 |
boolean | createNewFile() | 创建文件 |
File | createTempFile() | 创建一个用于缓存的临时文件 |
boolean | mkdir() | 创建文件夹 |
boolean | mkdirs() | 创建多级文件夹,如果父级文件夹不存在,会自动创建 |
三、删除功能
返回值 | 方法 | 功能描述 |
boolean | delete() | 删除文件或文件夹 |
void | deleteOnExit() | JVM退出时删除File对象对应的文件和目录 |
四、重命名功能
方法 | 功能描述 |
renamneTo(File dest) | 路径名相同就是重命名,不一样就是改名加剪切 |
五、判断功能
方法 | 功能描述 |
isDirectory() | 判断是否是目录 |
isFile() | 判断是否是文件 |
exists() | 判断是否是存在 |
canRead() | 判断是否是可读 |
canWrite() | 判断是否是可写 |
isHidden() | 判断是否是隐藏 |
isAbsolute() | 是否是绝对路径 |
六、 获取功能
返回值 | 方法 | 功能描述 |
---|---|---|
String | getAbsolutePath() | 获取绝对路径 |
String | getPath() | 获取相对路径 |
String | getParent() | 获取父目录 |
String | getName() | 获取名称 |
long | getFreeSpace() | 获取剩余可用空间 |
long | getTotalSpace() | 获取总大小 |
long | length() | 获取长度,字节数 |
long | lastModified() | 获取最后一次修改时间,毫秒值 |
String[] | list() | 获取指定目录下的所有文件或文件夹的名称数组 |
File[] | listFiles() | 获取指定目录下的所有文件或文件夹的File数组 |
七、高级获取功能
返回值 | 方法 | 功能描述 |
---|---|---|
String[] | list(FilenameFilter filter) | 返回满足条件的文件名数组 |
File[] | listFiles(FilenameFilter filter) | 返回满足条件的文件数组 |
File[] | listRoots() | 列出系统所有的根路径 |