我想知道以下两者之间的区别:
FileChannel fc = FileChannel.open();
RandomAccessFile ra = new RandomAccessFile("RandomFile", "rw");
由于java 7的类
FileChannel
实现了SeekableByteChannel
,因此它拥有随机访问文件所需的一切。我们能说这两个是完全一样的吗?
最佳答案
FileChannel
还有很多特性,因为它也是GatheringByteChannel
,InterruptibleChannel
,ScatteringByteChannel
。此外,它还可以锁定文件、传输文件、使用直接字节缓冲区,参见api