File 类
java.io 包中的 File 类,它提供了操作文件和目录的方法,但是不能读写文件。常用方法有:
- 创建文件对象
File(String pathname) - 判断文件是否存在
exists() - 判断是否是文件
isFile() - 判断是否是目录
isDirectory() - 返回文件或目录名
getName() - 返回绝对路径
getAbsolutePath() - 返回文件列表
listFiles() - 根据当前路径创建文件目录
mkdirs() - 原子操作,检查文件是否存在,不存在创建新文件
createNewFile() - 删除文件,删除目录时目录下必须为空
delete() -
Files 类
java.nio.file 包将文件和路径分开,即 Files 类与 Path 类,两者一起提供了操作文件、目录和其它类型文件的方法,它增强了文件操作,可以打开文件流进行读写操作,对 File 类方法调用失败不会抛出具体异常等缺点进行改进,IO 操作是安全的。
文件路径 Path
- 创建路径对象
of(String first, String... more)
- 创建路径对象
- 文件操作 Files
- 判断文件是否存在
exists(Path path, LinkOption... options) - 判断两个路径是否是同一个文件
isSameFile(Path path, Path path2) - 判断是否是常规文件
isRegularFile(Path path, LinkOption... options) - 判断是否是符号链接
isSymbolicLink(Path path) - 判断是否是文件目录
isDirectory(Path path, LinkOption... options) - 读取文件所有内容(注意仅用于小文件,防止内存耗尽)
readAllBytes(Path path)readString(Path path, Charset cs)readAllLines(Path path, Charset cs)
- 写文件
write(Path path, byte[] bytes, OpenOption... options)writeString(Path path, CharSequence csq, Charset cs, OpenOption... options)
- 打开文件流
newInputStream(Path path, OpenOption... options)newOutputStream(Path path, OpenOption... options)
- 创建文件,可以添加参数,选择何时销毁的钩子
createFile(Path path, FileAttribute<?>... attrs)createTempFile(Path dir, String prefix, String suffix, FileAttribute<?>... attrs)
- 删除文件
delete(Path path)deleteIfExists(Path path)
- 判断文件是否存在
