Instances of this class support reading from a random access file. A random
access file behaves like a large array of bytes stored in the file system.
There is a kind of cursor, or index into the implied array, called the file
pointer. Read operations read bytes starting at the file pointer and advance
the file pointer past the bytes read. The file pointer can be read by the
getPosition method and set by the setPosition method.
Reads a signed eight-bit value from the file starting from the current
file pointer. Since the byte is interpreted as signed, the value returned
will always be between -128 and +127.
Returns:
the next byte of this file as a signed eight-bit byte.
Throws:
IOException - if an I/O error occurs or if this file has reached the end.
Reads up to n bytes from the file starting at the current file pointer.
If there are fewer than n bytes remaining in the file, then as many bytes
as possible are read. If no bytes remain in the file, then null is
returned.
Parameters:
numBytes - The number of bytes to read. Must be non-negative and smaller than MAX_READ_BYTES or an exception will be thrown.
Returns:
A Bytes object representing the read bytes or null if no bytes
were read.
Throws:
IOException - if an I/O error occurs.
IllegalArgumentException - if numBytes< 0 or numBytes > MAX_READ_BYTES.
Sets the file-pointer offset, measured from the beginning of this file,
at which the next read occurs. The offset may be set beyond the end of
the file.
Parameters:
position - the offset position, measured in bytes from the beginning of the file, at which to set the file pointer
Throws:
IOException - if position is less than 0 or if an I/O error occurs.