我想知道以下两者之间的区别:

FileChannel fc = FileChannel.open();
RandomAccessFile ra = new RandomAccessFile("RandomFile", "rw");

由于java 7的类FileChannel实现了SeekableByteChannel,因此它拥有随机访问文件所需的一切。
我们能说这两个是完全一样的吗?

最佳答案

FileChannel还有很多特性,因为它也是GatheringByteChannelInterruptibleChannelScatteringByteChannel。此外,它还可以锁定文件、传输文件、使用直接字节缓冲区,参见api

10-08 19:20