Package jj2000.j2k.io
Interface RandomAccessIO
-
- All Superinterfaces:
BinaryDataInput
,BinaryDataOutput
- All Known Implementing Classes:
BEBufferedRandomAccessFile
,BufferedRandomAccessFile
,IISRandomAccessIO
,ISRandomAccessIO
public interface RandomAccessIO extends BinaryDataInput, BinaryDataOutput
This abstract class defines the interface to perform random access I/O. It implements the BinaryDataInput and BinaryDataOutput interfaces so that binary data input/output can be performed.This interface supports streams of up to 2 GB in length.
- See Also:
BinaryDataInput
,BinaryDataOutput
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
close()
Closes the I/O stream.int
getPos()
Returns the current position in the stream, which is the position from where the next byte of data would be read.int
length()
Returns the current length of the stream, in bytes, taking into account any buffering.int
read()
Reads a byte of data from the stream.void
readFully(byte[] b, int off, int len)
Reads up to len bytes of data from this file into an array of bytes.void
seek(int off)
Moves the current position for the next read or write operation to offset.void
write(int b)
Writes a byte to the stream.-
Methods inherited from interface jj2000.j2k.io.BinaryDataInput
getByteOrdering, readByte, readDouble, readFloat, readInt, readLong, readShort, readUnsignedByte, readUnsignedInt, readUnsignedShort, skipBytes
-
Methods inherited from interface jj2000.j2k.io.BinaryDataOutput
flush, getByteOrdering, writeByte, writeDouble, writeFloat, writeInt, writeLong, writeShort
-
-
-
-
Method Detail
-
close
void close() throws IOException
Closes the I/O stream. Prior to closing the stream, any buffered data (at the bit and byte level) should be written.- Throws:
IOException
- If an I/O error ocurred.
-
getPos
int getPos() throws IOException
Returns the current position in the stream, which is the position from where the next byte of data would be read. The first byte in the stream is in position 0.- Returns:
- The offset of the current position, in bytes.
- Throws:
IOException
- If an I/O error ocurred.
-
length
int length() throws IOException
Returns the current length of the stream, in bytes, taking into account any buffering.- Returns:
- The length of the stream, in bytes.
- Throws:
IOException
- If an I/O error ocurred.
-
seek
void seek(int off) throws IOException
Moves the current position for the next read or write operation to offset. The offset is measured from the beginning of the stream. The offset may be set beyond the end of the file, if in write mode. Setting the offset beyond the end of the file does not change the file length. The file length will change only by writing after the offset has been set beyond the end of the file.- Parameters:
off
- The offset where to move to.- Throws:
EOFException
- If in read-only and seeking beyond EOF.IOException
- If an I/O error ocurred.
-
read
int read() throws EOFException, IOException
Reads a byte of data from the stream. Prior to reading, the stream is realigned at the byte level.- Returns:
- The byte read, as an int.
- Throws:
EOFException
- If the end-of file was reached.IOException
- If an I/O error ocurred.
-
readFully
void readFully(byte[] b, int off, int len) throws IOException
Reads up to len bytes of data from this file into an array of bytes. This method reads repeatedly from the stream until all the bytes are read. This method blocks until all the bytes are read, the end of the stream is detected, or an exception is thrown.- Parameters:
b
- The buffer into which the data is to be read. It must be long enough.off
- The index in 'b' where to place the first byte read.len
- The number of bytes to read.- Throws:
EOFException
- If the end-of file was reached before getting all the necessary data.IOException
- If an I/O error ocurred.
-
write
void write(int b) throws IOException
Writes a byte to the stream. Prior to writing, the stream is realigned at the byte level.- Parameters:
b
- The byte to write. The lower 8 bits of b are written.- Throws:
IOException
- If an I/O error ocurred.
-
-