Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
public interface ImageInputStream
extends DataInput
ImageReaders
.
Method Summary | |
void |
|
void |
|
void |
|
int | |
ByteOrder | |
long | |
long | |
boolean |
|
boolean | |
boolean | |
long |
|
void |
|
int |
|
int |
|
int |
|
int |
|
long |
|
boolean |
|
byte |
|
void |
|
char |
|
double |
|
float |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
int |
|
String |
|
long |
|
short |
|
String |
|
int |
|
long |
|
int |
|
void |
|
void |
|
void |
|
void |
|
int |
|
long |
|
Methods inherited from interface java.io.DataInput | |
readBoolean , readByte , readChar , readDouble , readFloat , readFully , readFully , readInt , readLine , readLong , readShort , readUTF , readUnsignedByte , readUnsignedShort , skipBytes |
public boolean readBoolean() throws IOException
Reads a byte and checks whether or not its value is zero. The bit offset is set to zero before the byte is read.
- Specified by:
- readBoolean in interface DataInput
- Throws:
IOException
- if some general problem happens with accessing data.
- See Also:
readBit()
,readByte()
,readFully(byte[],int,int)
public byte readByte() throws IOException
Reads a signed byte. The bit offset is set to zero before any data is read.
- Throws:
IOException
- if some general problem happens with accessing data.
- See Also:
readUnsignedByte()
,readFully(byte[],int,int)
public void readBytes(IIOByteBuffer buf, int numBytes) throws IOException
Reads up to a specified number of bytes, and modifies aIIOByteBuffer
to hold the read data. The bit offset is set to zero before any data is read.
- Parameters:
buf
- anIIOByteBuffer
that will hold the read data.numBytes
- the maximum number of bytes to read.
- Throws:
IndexOutOfBoundsException
- ifnumBytes
is negative.NullPointerException
- ifbuf
isnull
.IOException
- if some general problem happens with accessing data.
public char readChar() throws IOException
Reads an unsigned 16-bit integer. If necessary, the value gets converted from the stream’s current byte order. The bit offset is set to zero before any data is read. This method does the same asreadUnsignedShort()
.
- Throws:
IOException
- if some general problem happens with accessing data.
- See Also:
readFully(char[],int,int)
public double readDouble() throws IOException
Reads an IEEE 64-bit double-precision floating point number. If necessary, the value gets converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Specified by:
- readDouble in interface DataInput
- Throws:
IOException
- if some general problem happens with accessing data.
- See Also:
readFully(double[],int,int)
public float readFloat() throws IOException
Reads an IEEE 32-bit single-precision floating point number. If necessary, the value gets converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Throws:
IOException
- if some general problem happens with accessing data.
- See Also:
readFully(float[],int,int)
public void readFully(byte[] b) throws IOException
Reads a sequence of signed 8-bit integers into abyte[]
array. The bit offset is set to zero before any data is read.
- Parameters:
b
- an array for storing the read values.
- Throws:
NullPointerException
- ifb
isnull
.IOException
- if some general problem happens with accessing data.
- See Also:
readByte()
,readFully(byte[],int,int)
public void readFully(byte[] b, int offset, int numBytes) throws IOException
Reads a sequence of signed 8-bit integers into abyte[]
array. The bit offset is set to zero before any data is read.
- Parameters:
b
- an array for storing the read values.offset
- the index of the first element inb
that will hold read data.numBytes
- the number of bytes to read.
- Throws:
IndexOutOfBoundsException
- ifoffset
ornumBytes
is negative, or ifoffset + numBytes
exceedsb.length
.NullPointerException
- ifb
isnull
.IOException
- if some general problem happens with accessing data.
- See Also:
readByte()
public void readFully(char[] c, int offset, int numChars) throws IOException
Reads a sequence of unsigned 16-bit integers into achar[]
array. If necessary, values are converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Parameters:
c
- an array for storing the read values.offset
- the index of the first element inc
that will hold read data.numChars
- the number of unsigned 16-bit integers to read (which is one half of the number of bytes).
- Throws:
IndexOutOfBoundsException
- ifoffset
ornumChars
is negative, or ifoffset + numChars
exceedsc.length
.NullPointerException
- ifc
isnull
.IOException
- if some general problem happens with accessing data.
- See Also:
readChar()
public void readFully(double[] d, int offset, int numDoubles) throws IOException
Reads a sequence of IEEE 64-bit double-precision floating point numbers into adouble[]
array. If necessary, values are converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Parameters:
d
- an array for storing the read values.offset
- the index of the first element ind
that will hold read data.numDoubles
- the number of IEEE 64-bit double-precision floating point numbers to read (which is one eight of the number of bytes).
- Throws:
IndexOutOfBoundsException
- ifoffset
ornumDoubles
is negative, or ifoffset + numDoubles
exceedsd.length
.NullPointerException
- ifd
isnull
.IOException
- if some general problem happens with accessing data.
- See Also:
readDouble()
public void readFully(float[] f, int offset, int numFloats) throws IOException
Reads a sequence of IEEE 32-bit single-precision floating point numbers into afloat[]
array. If necessary, values are converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Parameters:
offset
- the index of the first element ind
that will hold read data.numFloats
- the number of IEEE 32-bit single-precision floating point numbers to read (which is one fourth of the number of bytes).
- Throws:
IndexOutOfBoundsException
- ifoffset
ornumFloats
is negative, or ifoffset + numFloats
exceedsf.length
.NullPointerException
- iff
isnull
.IOException
- if some general problem happens with accessing data.
- See Also:
readFloat()
public void readFully(int[] i, int offset, int numInts) throws IOException
Reads a sequence of signed 32-bit integers into along[]
array. If necessary, values are converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Parameters:
i
- an array for storing the read values.offset
- the index of the first element ini
that will hold read data.
- Throws:
IndexOutOfBoundsException
- ifoffset
ornumInts
is negative, or ifoffset + numInts
exceedsi.length
.NullPointerException
- ifi
isnull
.IOException
- if some general problem happens with accessing data.
- See Also:
readInt()
public void readFully(long[] l, int offset, int numLongs) throws IOException
Reads a sequence of signed 64-bit integers into along[]
array. If necessary, values are converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Parameters:
l
- an array for storing the read values.offset
- the index of the first element inl
that will hold read data.numLongs
- the number of signed 64-bit integers to read (which is one eight of the number of bytes).
- Throws:
IndexOutOfBoundsException
- ifoffset
ornumLongs
is negative, or ifoffset + numLongs
exceedsl.length
.NullPointerException
- ifl
isnull
.IOException
- if some general problem happens with accessing data.
- See Also:
readLong()
public void readFully(short[] s, int offset, int numShorts) throws IOException
Reads a sequence of signed 16-bit integers into ashort[]
array. If necessary, values are converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Parameters:
s
- an array for storing the read values.offset
- the index of the first element ins
that will hold read data.numShorts
- the number of signed 16-bit integers to read (which is one half of the number of bytes).
- Throws:
IndexOutOfBoundsException
- ifoffset
ornumShorts
is negative, or ifoffset + numShorts
exceedss.length
.NullPointerException
- ifs
isnull
.IOException
- if some general problem happens with accessing data.
- See Also:
readShort()
public int readInt() throws IOException
Reads a signed 32-bit integer. If necessary, the value gets converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Throws:
IOException
- if some general problem happens with accessing data.
- See Also:
readUnsignedInt()
,readFully(int[],int,int)
public String readLine() throws IOException
This method reads the next line of text data from an input stream. It operates by reading bytes and converting those bytes tochar
values by treating the byte read as the low eight bits of thechar
and using 0 as the high eight bits. Because of this, it does not support the full 16-bit Unicode character set. The reading of bytes ends when either the end of file or a line terminator is encountered. The bytes read are then returned as aString
. A line terminator is a byte sequence consisting of either\r
,\n
or\r\n
. These termination charaters are discarded and are not returned as part of the string. A line is also terminated by an end of file condition.
- Returns:
- The line read as a
String
- Throws:
IOException
- If an error occurs
public long readLong() throws IOException
Reads a signed 64-bit integer. If necessary, the value gets converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Throws:
IOException
- if some general problem happens with accessing data.
- See Also:
readFully(long[],int,int)
public short readShort() throws IOException
Reads an signed 16-bit integer. If necessary, the value gets converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Throws:
IOException
- if some general problem happens with accessing data.
public String readUTF() throws IOException
This method reads aString
from an input stream that is encoded in a modified UTF-8 format. This format has a leading two byte sequence that contains the remaining number of bytes to read. This two byte sequence is read using thereadUnsignedShort()
method of this interface. After the number of remaining bytes have been determined, these bytes are read an transformed intochar
values. Thesechar
values are encoded in the stream using either a one, two, or three byte format. The particular format in use can be determined by examining the first byte read. If the first byte has a high order bit of 0, then that character consists on only one byte. This character value consists of seven bits that are at positions 0 through 6 of the byte. As an example, ifbyte1
is the byte read from the stream, it would be converted to achar
like so:(char)byte1
If the first byte has 110 as its high order bits, then the character consists of two bytes. The bits that make up the character value are in positions 0 through 4 of the first byte and bit positions 0 through 5 of the second byte. (The second byte should have 10 as its high order bits). These values are in most significant byte first (i.e., "big endian") order. As an example, ifbyte1
andbyte2
are the first two bytes read respectively, and the high order bits of them match the patterns which indicate a two byte character encoding, then they would be converted to a Javachar
like so:(char)(((byte1 & 0x1F) << 6) + (byte2 & 0x3F))
If the first byte has a 1110 as its high order bits, then the character consists of three bytes. The bits that make up the character value are in positions 0 through 3 of the first byte and bit positions 0 through 5 of the other two bytes. (The second and third bytes should have 10 as their high order bits). These values are in most significant byte first (i.e., "big endian") order. As an example, ifbyte1
,byte2
, andbyte3
are the three bytes read, and the high order bits of them match the patterns which indicate a three byte character encoding, then they would be converted to a Javachar
like so:(char)(((byte1 & 0x0F) << 12) + ((byte2 & 0x3F) + (byte3 & 0x3F))
Note that all characters are encoded in the method that requires the fewest number of bytes with the exception of the character with the value of\<llll>u0000
which is encoded as two bytes. This is a modification of the UTF standard used to prevent C language styleNUL
values from appearing in the byte stream. This method can read data that was written by an object implementing thewriteUTF()
method inDataOutput
.
- Returns:
- The
String
read
- Throws:
IOException
- If any other error occurs
- See Also:
DataOutput.writeUTF(String)
public int readUnsignedByte() throws IOException
Reads an unsigned byte. The bit offset is set to zero before any data is read.
- Specified by:
- readUnsignedByte in interface DataInput
- Throws:
IOException
- if some general problem happens with accessing data.
- See Also:
readByte()
,readFully(byte[],int,int)
public long readUnsignedInt() throws IOException
Reads an unsigned 32-bit integer. If necessary, the value gets converted from the stream’s current byte order. The bit offset is set to zero before any data is read.
- Throws:
IOException
- if some general problem happens with accessing data.
- See Also:
readInt()
,readFully(int[],int,int)
public int readUnsignedShort() throws IOException
Reads an unsigned 16-bit integer. If necessary, the value gets converted from the stream’s current byte order. The bit offset is set to zero before any data is read. This method does the same asreadChar()
.
- Specified by:
- readUnsignedShort in interface DataInput
- Throws:
IOException
- if some general problem happens with accessing data.
- See Also:
readShort()
,readChar()
,readFully(char[],int,int)
public int skipBytes(int numBytes) throws IOException
This method skips and discards the specified number of bytes in an input stream. Note that this method may skip less than the requested number of bytes. The actual number of bytes skipped is returned. No bytes are skipped if a negative number is passed to this method.
- Parameters:
numBytes
- The number of bytes to skip
- Returns:
- The number of bytes actually skipped, which will always be
numBytes
- Throws:
IOException
- If any other error occurs