.
原文:《Java NIO AsynchronousFileChannel》
AsynchronousFileChannel 使得异步读写文件成为可能。此教程将解释如何使用该类。
创建一个 AsynchronousFileChannel
可通过 AsynchronousFileChannel.open() 方法创建实例:
Java代码
-
Path path = Paths.get("C:\\test\\file1.txt");
-
AsynchronousFileChannel fileChannel = AsynchronousFileChannel.open(path, StandardOpenOption.READ);
读数据
可通过以下两种方式读取文件数据。两种方式都调用了 AsynchronousFileChannel.read() 方法。
通过 Future 读数据
read() 方法会立即返回一个 Future 对象,且不保证数据读取完成,所以需要有后续操作确保等到读取完成后再使用缓冲区中的数据。
Java代码