NIO2接口方法

JDK7对NIO进行了极大的扩展,增强了对文件处理和文件系统特性的支持,以至于我们称他们为 NIO.2。因为NIO 提供的一些功能,NIO已经成为文件处理中越来越重要的部分。

Path 与 Paths

java.nio.file.Path接口代表一个平台无关的平台路径,描述了目录结构中文件的位置。

Paths提供的get()方法用来获取Path对象:

  • Path get(String first, String … more):用于将多个字符串串连成路径。

Path常用方法:

  1. boolean endsWith(String path): 判断是否以 path 路径结束;

  2. boolean startsWith(String path):判断是否以 path 路径开始;

  3. boolean isAbsolute(): 判断是否是绝对路径;

  4. Path getFileName(): 返回与调用 Path 对象关联的文件名;

  5. Path getName(int idx):返回的指定索引位置 idx 的路径名称;

  6. int getNameCount():返回Path 根目录后面元素的数量;

  7. Path getParent() :返回Path对象包含整个路径,不包含 Path 对象指定的文件路径;

  8. Path getRoot() :返回调用 Path 对象的根路径;

  9. Path resolve(Path p) :将相对路径解析为绝对路径;

  10. Path toAbsolutePath():作为绝对路径返回调用 Path 对象;

  11. String toString():返回调用 Path 对象的字符串表示形式。

Files 类

java.nio.file.Files 用于操作文件或目录的工具类。

Files常用方法(增删改):

  1. Path copy(Path src, Path dest, CopyOption … how):文件的复制;

  2. Path createDirectory(Path path, FileAttribute<?> … attr):创建一个目录;

  3. Path createFile(Path path, FileAttribute<?> … arr):创建一个文件;

  4. void delete(Path path):删除一个文件;

  5. Path move(Path src, Path dest, CopyOption…how):将 src 移动到 dest 位置;

  6. long size(Path path):返回 path 指定文件的大小。

Files常用方法(判断类):

  1. boolean exists(Path path, LinkOption … opts):判断文件是否存在;
  2. boolean isDirectory(Path path, LinkOption … opts):判断是否是目录;
  3. boolean isExecutable(Path path):判断是否是可执行文件;
  4. boolean isHidden(Path path):判断是否是隐藏文件;
  5. boolean isReadable(Path path):判断文件是否可读;
  6. boolean isWritable(Path path):判断文件是否可写;
  7. boolean notExists(Path path, LinkOption … opts):判断文件是否不存在;
  8. public static <A extends BasicFileAttributes> A readAttributes(Path path,Class<A> type,LinkOption... options):获取与 path 指定的文件相关联的属性。

Files常用方法(内容操作):

  1. SeekableByteChannel newByteChannel(Path path, OpenOption…how):获取与指定文件的连接,how 指定打开方式。
  2. DirectoryStream newDirectoryStream(Path path):打开 path 指定的目录
  3. InputStream newInputStream(Path path, OpenOption…how):获取 InputStream 对象
  4. OutputStream newOutputStream(Path path, OpenOption…how):获取 OutputStream 对象
请作者喝瓶肥宅水🥤

0