Skip to contents

RandomAccessFile inherits from InputStream and is a base class for: ReadableFile for reading from a file; MemoryMappedFile for the same but with memory mapping; and BufferReader for reading from a buffer. Use these with the various table readers.


The $create() factory methods instantiate the InputStream object and take the following arguments, depending on the subclass:

  • path For ReadableFile, a character file name

  • x For BufferReader, a Buffer or an object that can be made into a buffer via buffer().

To instantiate a MemoryMappedFile, call mmap_open().


  • $GetSize():

  • $supports_zero_copy(): Logical

  • $seek(position): go to that position in the stream

  • $tell(): return the position in the stream

  • $close(): close the stream

  • $Read(nbytes): read data from the stream, either a specified nbytes or all, if nbytes is not provided

  • $ReadAt(position, nbytes): similar to $seek(position)$Read(nbytes)

  • $Resize(size): for a MemoryMappedFile that is writeable