考虑到Java 7中的FileChannel实现了SeekableByteChannel接口。使用RandomAccessFile而不是FileChannel有什么用吗? 提前谢谢。
答案 0 :(得分:-3)
RadomAccessFile
和FileChannel
完全不同。
在{NIO(例如频道)之前,RandomAccessFile
被引入java之前。当您必须在文件的指定位置(而不是顺序)进行读写时,对文件进行操作很有用。
然而,读取和写入操作被阻止,例如,如果你调用read方法,它将被阻塞,直到读取字节为止。
通道属于所谓的非阻塞IO,允许读取(和写入)字节而不会被阻塞。 RandomAccessFile
和FileChannel
之间的唯一关系是您可以通过随机访问文件访问频道。