FileChannel与RandomAccessFile

时间:2013-05-11 09:40:00

标签: java io nio

考虑到Java 7中的FileChannel实现了SeekableByteChannel接口。使用RandomAccessFile而不是FileChannel有什么用吗? 提前谢谢。

1 个答案:

答案 0 :(得分:-3)

RadomAccessFileFileChannel完全不同。 在{NIO(例如频道)之前,RandomAccessFile被引入java之前。当您必须在文件的指定位置(而不是顺序)进行读写时,对文件进行操作很有用。 然而,读取和写入操作被阻止,例如,如果你调用read方法,它将被阻塞,直到读取字节为止。

通道属于所谓的非阻塞IO,允许读取(和写入)字节而不会被阻塞。 RandomAccessFileFileChannel之间的唯一关系是您可以通过随机访问文件访问频道。