Ths Java tips illustrates a method of creating a Memory-Mapped file. A ByteArray may be created while mapping a file in memory. A ByteBuffer has a capacity that determines how many bytes it contains. This capacity can never change. Further the bytes in ByteArray may be retrieved by using get().

try {
        File file = new File("filename");
        // Create a read-only memory-mapped file
        FileChannel roChannel = 
          new RandomAccessFile(file, "r").getChannel();
        ByteBuffer readonlybuffer = 
    0, (int)roChannel.size());
        // Create a read-write memory-mapped file
        FileChannel rwChannel = 
          new RandomAccessFile(file, "rw").getChannel();
        ByteBuffer writeonlybuffer= 
      0, (int)rwChannel.size());
        // Create a private (copy-on-write) memory-mapped file.
        // Any write to this channel results in a private 
        // copy of the data.
        FileChannel pvChannel = 
          new RandomAccessFile(file, "rw").getChannel();
        ByteBuffer privatebuffer = 
      0, (int)rwChannel.size());
    } catch (IOException e) {