Reads a sequence of bytes from this channel into the given buffer, starting at the given file position.
This method works in the same manner as the
read(ByteBuffer) method, except that bytes are read starting at the
given file position rather than at the channel's current position. This
method does not modify this channel's position. If the given position
is greater than the file's current size then no bytes are read.
|The buffer into which bytes are to be transferred|
|The file position at which the transfer is to begin; must be non-negative|
-1 if the
given position is greater than or equal to the file's current
|If the position is negative|
|If this channel was not opened for reading|
|If this channel is closed|
|If another thread closes this channel while the read operation is in progress|
|If another thread interrupts the current thread while the read operation is in progress, thereby closing the channel and setting the current thread's interrupt status|
|If some other I/O error occurs|