使用 Channel 和 Buffer 编写文件

要使用 Channel 将数据写入文件,我们需要执行以下步骤:

  1. 首先,我们需要得到一个 FileOutputStream 的对象
  2. FileOutputStream 获取 FileChannel 调用 getChannel() 方法
  3. 创建一个 ByteBuffer 然后用数据填充它
  4. 然后我们必须调用 ByteBufferflip() 方法并将其作为 write() 方法的参数传递给 FileChannel
  5. 完成写作后,我们必须关闭资源
import java.io.*;
import java.nio.*;
public class FileChannelWrite {

 public static void main(String[] args) {

  File outputFile = new File("hello.txt");
  String text = "I love Bangladesh.";

  try {
   FileOutputStream fos = new FileOutputStream(outputFile);
   FileChannel fileChannel = fos.getChannel();
   byte[] bytes = text.getBytes();
   ByteBuffer buffer = ByteBuffer.wrap(bytes);
   fileChannel.write(buffer);
   fileChannel.close();
  } catch (java.io.IOException e) {
   e.printStackTrace();
  }
 }
}