跳到内容

RandomAccessFile 继承自 InputStream,是以下类的基类:ReadableFile 用于从文件读取;MemoryMappedFile 用于相同目的,但使用内存映射;以及 BufferReader 用于从缓冲区读取。将它们与各种表读取器一起使用。

工厂

$create() 工厂方法实例化 InputStream 对象,并采用以下参数,具体取决于子类

  • path 对于 ReadableFile,是一个字符文件名

  • x 对于 BufferReader,是一个 Buffer 或可以通过 buffer() 制成缓冲区的对象。

要实例化 MemoryMappedFile,请调用 mmap_open()

方法

  • $GetSize():

  • $supports_zero_copy(): 逻辑值

  • $seek(position): 转到流中的该位置

  • $tell(): 返回流中的位置

  • $close(): 关闭流

  • $Read(nbytes): 从流中读取数据,可以是指定的 nbytes 字节数,如果没有提供 nbytes,则读取全部数据

  • $ReadAt(position, nbytes): 类似于 $seek(position)$Read(nbytes)

  • $Resize(size): 对于可写的 MemoryMappedFile