public class LargeMappedFiles {
static int length = 0x8FFFFFF; //128MB
public static void main(String[] args) throws Exception{
MappedByteBuffer out = new RandomAccessFile("test.dat","rw").getChannel()
.map(FileChannel.MapMode.READ_WRITE,0,length);
for (int i = 0; i < length;i++){
out.put((byte)'x');
}
System.out.print("Finished writing");
for (int i = length/2; i<length/2+6;i++){
System.out.print(out.get(i));
}
}
}
上面的代码利用了NIO中的内存映射类,能够达到很快的读写速度,算是比较实用的一个东西