Java I/O How to - Write int to RandomAccessFile using FileChannel








Question

We would like to know how to write int to RandomAccessFile using FileChannel.

Answer

 /*  w  w w  .  java 2s  .  c o m*/


import java.io.IOException;
import java.io.RandomAccessFile;
import java.nio.IntBuffer;
import java.nio.channels.FileChannel;

public class MainClass {
  public static void main(String[] args) throws IOException {
    FileChannel fc = new RandomAccessFile("temp.tmp", "rw").getChannel();
    IntBuffer ib = fc.map(FileChannel.MapMode.READ_WRITE, 0, fc.size()).asIntBuffer();
    for (int i = 0; i < 10; i++)
      ib.put(i);
    fc.close();

  }
}

The code above generates the following result.