|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public interface ImageInputStream extends DataInput, Closeable
ImageReaders. Различные входные источники, такой как InputStreams и Files, так же как будущие быстрые источники ввода-вывода может быть "обернут" подходящей реализацией этого интерфейса для использования API ввода-вывода Изображения.| Модификатор и Тип | Метод и Описание |
|---|---|
void |
close()
Закрывает поток.
|
void |
flush()
Отбрасывает начальную позицию потока до текущей потоковой позиции.
|
void |
flushBefore(long pos)
Отбрасывает начальную часть потока до обозначенного постиона.
|
int |
getBitOffset()
Возвращает текущее разрядное смещение, как целое число между 0 и 7, включительно.
|
ByteOrder |
getByteOrder()
Возвращает порядок байтов, с которым значения данных будут считаны из этого потока как экземпляр
java.nio.ByteOrder перечисление. |
long |
getFlushedPosition()
Возвращает самую раннюю позицию в потоке, к которому может быть выполнен поиск.
|
long |
getStreamPosition()
Возвращает текущую позицию байта потока.
|
boolean |
isCached()
Возвраты
true если это ImageInputStream данные кэшей непосредственно, чтобы позволить искать назад. |
boolean |
isCachedFile()
Возвраты
true если это ImageInputStream данные кэшей непосредственно, чтобы позволить искать назад, и кэш, сохраняются во временном файле. |
boolean |
isCachedMemory()
Возвраты
true если это ImageInputStream данные кэшей непосредственно, чтобы позволить искать назад, и кэш, сохраняются в оперативной памяти. |
long |
length()
Возвращает полную длину потока, если известный.
|
void |
mark()
Отмечает позицию в потоке, который будет возвращен к последующим звонком
reset. |
int |
read()
Читает единственный байт из потока и возвращает это как целое число между 0 и 255.
|
int |
read(byte[] b)
Чтения до
b.length байты от потока, и хранят их в b запуск в индексирует 0. |
int |
read(byte[] b, int off, int len)
Чтения до
len байты от потока, и хранят их в b запуск в индексирует off. |
int |
readBit()
Читает единственный бит из потока и возвращает это как
int со значением 0 или 1. |
long |
readBits(int numBits)
Читает строку битов из потока и возвращает это как a
long, с первым разрядным чтением, становящимся старшим значащим битом вывода. |
boolean |
readBoolean()
Читает байт из потока и возвращает a
boolean значение true если это является ненулевым, false если это - нуль. |
byte |
readByte()
Читает байт из потока и возвращает это как a
byte значение. |
void |
readBytes(IIOByteBuffer buf, int len)
Чтения до
len байты от потока, и изменяют предоставленный IIOByteBuffer чтобы указать на байтовый массив, сместите, и длина, где данные могут быть найдены. |
char |
readChar()
Эквивалентный
readUnsignedShort, за исключением того, что результат возвращается, используя char тип данных. |
double |
readDouble()
Чтения 8 байтов от потока, и (концептуально) связывают их согласно текущему порядку байтов и возвращают результат как a
double. |
float |
readFloat()
Чтения 4 байта от потока, и (концептуально) связывают их согласно текущему порядку байтов и возвращают результат как a
float. |
void |
readFully(byte[] b)
Чтения
b.length байты от потока, и хранят их в b запуск в индексирует 0. |
void |
readFully(byte[] b, int off, int len)
Чтения
len байты от потока, и хранят их в b запуск в индексирует off. |
void |
readFully(char[] c, int off, int len)
Чтения
len случайные работы (16-разрядные целые числа без знака) от потока согласно текущему порядку байтов, и хранят их в c запуск в индексирует off. |
void |
readFully(double[] d, int off, int len)
Чтения
len удваивается (64-разрядные плавания двойной точности IEEE) от потока согласно текущему порядку байтов, и хранит их в d запуск в индексирует off. |
void |
readFully(float[] f, int off, int len)
Чтения
len плавания (32-разрядные плавания одинарной точности IEEE) от потока согласно текущему порядку байтов, и хранят их в f запуск в индексирует off. |
void |
readFully(int[] i, int off, int len)
Чтения
len ints (подписал 32-разрядные целые числа) от потока согласно текущему порядку байтов, и хранит их в i запуск в индексирует off. |
void |
readFully(long[] l, int off, int len)
Чтения
len longs (подписал 64-разрядные целые числа) от потока согласно текущему порядку байтов, и хранит их в l запуск в индексирует off. |
void |
readFully(short[] s, int off, int len)
Чтения
len шорты (подписал 16-разрядные целые числа) от потока согласно текущему порядку байтов, и хранят их в s запуск в индексирует off. |
int |
readInt()
Чтения 4 байта от потока, и (концептуально) связывают их согласно текущему порядку байтов и возвращают результат как
int. |
Строка |
readLine()
Читает следующую строку текста от входного потока.
|
long |
readLong()
Чтения 8 байтов от потока, и (концептуально) связывают их согласно текущему порядку байтов и возвращают результат как a
long. |
short |
readShort()
Чтения два байта от потока, и (концептуально) связывают их согласно текущему порядку байтов, и возвращают результат как a
short значение. |
int |
readUnsignedByte()
Читает байт из потока, и (концептуально) преобразовывает это в интервал, маскирует это с
0xff чтобы снять изоляцию с любых битов расширения знака, и возвратов это как a byte значение. |
long |
readUnsignedInt()
Чтения 4 байта от потока, и (концептуально) связывают их согласно текущему порядку байтов, преобразовывают результат в длинное, маски это с
0xffffffffL чтобы снять изоляцию с любых битов расширения знака, и возвратов результат как без знака long значение. |
int |
readUnsignedShort()
Чтения два байта от потока, и (концептуально) связывают их согласно текущему порядку байтов, преобразовывают получающееся значение в
int, маскирует это с 0xffff чтобы снять изоляцию с любого расширения знака buts, и возвратов результат как без знака int значение. |
Строка |
readUTF()
Чтения в строке, которая была закодирована, используя измененный формат UTF-8.
|
void |
reset()
Возвращает потоковый указатель на его предыдущую позицию, включая разрядное смещение, во время нового несогласованного звонка
mark. |
void |
seek(long pos)
Устанавливает текущую потоковую позицию в требуемое расположение.
|
void |
setBitOffset(int bitOffset)
Устанавливает разрядное смещение в целое число между 0 и 7, включительно.
|
void |
setByteOrder(ByteOrder byteOrder)
Устанавливает требуемый порядок байтов для будущих чтений значений данных от этого потока.
|
int |
skipBytes(int n)
Перемещает потоковую позицию вперед данным числом байтов.
|
long |
skipBytes(long n)
Перемещает потоковую позицию вперед данным числом байтов.
|
void setByteOrder(ByteOrder byteOrder)
Перечисление class java.nio.ByteOrder используется, чтобы определить порядок байтов. Значение ByteOrder.BIG_ENDIAN определяет так называемый или сетевой порядок байтов с обратным порядком байтов, в котором на первом месте байт старшего разряда. Motorola и процессоры Sparc хранят данные в этом формате, в то время как процессоры Intel хранят данные в реверсе ByteOrder.LITTLE_ENDIAN порядок.
Порядок байтов не имеет никакого эффекта на результаты, возвращенные из readBits метод (или значение, записанное ImageOutputStream.writeBits).
byteOrder - один из ByteOrder.BIG_ENDIAN или java.nio.ByteOrder.LITTLE_ENDIAN, указание, будут ли сетевой порядок байтов или его реверс использоваться для будущих чтений.ByteOrder, getByteOrder(), readBits(int)ByteOrder getByteOrder()
java.nio.ByteOrder перечисление.ByteOrder.BIG_ENDIAN или ByteOrder.LITTLE_ENDIAN, указание, какой порядок байтов используется.ByteOrder, setByteOrder(java.nio.ByteOrder)int read() throws IOException
Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
IOException - если ошибка ввода-вывода происходит.int read(byte[] b) throws IOException
b.length байты от потока, и хранят их в b запуск в индексирует 0. Число чтения байтов возвращается. Если никакие байты не могут быть считаны, потому что конец потока был достигнут,-1 возвращается. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
b - массив байтов, которые будут записаны.-1 указать на EOF.NullPointerException - если b null.IOException - если ошибка ввода-вывода происходит.int read(byte[] b,
int off,
int len)
throws IOException
len байты от потока, и хранят их в b запуск в индексирует off. Число чтения байтов возвращается. Если никакие байты не могут быть считаны, потому что конец потока был достигнут, -1 возвращается. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
b - массив байтов, которые будут записаны.off - стартовая позиция в пределах b записать в.len - максимальное количество bytes, чтобы читать.-1 указать на EOF.NullPointerException - если b null.IndexOutOfBoundsException - если off отрицательно, len отрицательно, или off + len больше чем b.length.IOException - если ошибка ввода-вывода происходит.void readBytes(IIOByteBuffer buf, int len) throws IOException
len байты от потока, и изменяют предоставленный IIOByteBuffer чтобы указать на байтовый массив, сместите, и длина, где данные могут быть найдены. Вызывающая сторона не должна попытаться изменить данные, найденные в IIOByteBuffer. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
buf - IIOByteBuffer возражает, чтобы быть измененным.len - максимальное количество bytes, чтобы читать.IndexOutOfBoundsException - если len отрицательно.NullPointerException - если buf null.IOException - если ошибка ввода-вывода происходит.boolean readBoolean()
throws IOException
boolean значение true если это является ненулевым, false если это - нуль. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readBoolean в интерфейсе DataInputEOFException - если конец потока достигается.IOException - если ошибка ввода-вывода происходит.byte readByte()
throws IOException
byte значение. Байт оценивает между 0x00 и 0x7f представьте целочисленные значения между 0 и 127. Значения между 0x80 и 0xff представьте отрицательные величины от -128 к /1. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readByte в интерфейсе DataInputEOFException - если конец потока достигается.IOException - если ошибка ввода-вывода происходит.int readUnsignedByte()
throws IOException
0xff чтобы снять изоляцию с любых битов расширения знака, и возвратов это как a byte значение. Таким образом байт оценивает между 0x00 и 0x7f просто возвращаются как целочисленные значения между 0 и 127. Значения между 0x80 и 0xff, которые обычно представляют отрицательный byteзначения, будет отображен в положительные целые числа между 128 и 255.
Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readUnsignedByte в интерфейсе DataInputEOFException - если конец потока достигается.IOException - если ошибка ввода-вывода происходит.short readShort()
throws IOException
short значение. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readShort в интерфейсе DataInputEOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.getByteOrder()int readUnsignedShort()
throws IOException
int, маскирует это с 0xffff чтобы снять изоляцию с любого расширения знака buts, и возвратов результат как без знака int значение. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readUnsignedShort в интерфейсе DataInputEOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.getByteOrder()char readChar()
throws IOException
readUnsignedShort, за исключением того, что результат возвращается, используя char тип данных. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readChar в интерфейсе DataInputEOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.readUnsignedShort()int readInt()
throws IOException
int. Разрядное смещение в потоке игнорируется и обрабатывается, как если бы это был нуль.
readInt в интерфейсе DataInputEOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.getByteOrder()long readUnsignedInt()
throws IOException
0xffffffffL чтобы снять изоляцию с любых битов расширения знака, и возвратов результат как без знака long значение. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
EOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.getByteOrder()long readLong()
throws IOException
long. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readLong в интерфейсе DataInputEOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.getByteOrder()float readFloat()
throws IOException
float. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readFloat в интерфейсе DataInputEOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.getByteOrder()double readDouble()
throws IOException
double. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readDouble в интерфейсе DataInputEOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.getByteOrder()String readLine() throws IOException
String. Отметьте, что, потому что этот метод обрабатывает байты, он не поддерживает ввод полного набора символов Unicode. Если с концом файла встречаются прежде, чем даже один байт может быть считан, то null возвращается. Иначе, каждый байт, который читается, преобразовывается в тип char дополнением нулями. Если символ '\n' встречается, это отбрасывается, и чтение прекращается. Если символ '\r' встречается, это отбрасывается и, если следующий байт преобразовывает в символ '\n', тогда это отбрасывается также; чтение тогда прекращается. Если с концом файла встречаются перед любым из символов '\n' и '\r' встречается, чтение прекращается. Как только чтение прекратилось, a String возвращается, который содержит все чтение символов и не отброшенный, взятый в порядке. Отметьте, что у каждого символа в этой строке будет значение меньше чем \u0100, то есть, (char)256.
Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readLine в интерфейсе DataInputIOException - если ошибка ввода-вывода происходит.String readUTF() throws IOException
readUTF это, это читает представление символьной строки Unicode, закодированной в измененном формате UTF-8; эта строка символов тогда возвращается как a String. Во-первых, два байта читаются и используются, чтобы создать 16-разрядное целое число без знака таким образом readUnsignedShort метод, используя сетевой порядок байтов (независимо от текущей установки порядка байтов). Это целочисленное значение вызывают длиной UTF и определяет число дополнительных байтов, которые будут считаны. Эти байты тогда преобразовываются в символы, рассматривая их в группах. Длина каждой группы вычисляется от значения первого байта группы. Байт после группы, если таковые вообще имеются, является первым байтом следующей группы.
Если первый байт группы соответствует комбинацию двоичных разрядов 0xxxxxxx (где x означает, "может быть 0 или 1"), тогда группа состоит из только того байта. Байт расширяется до нуля, чтобы сформировать символ.
Если первый байт группы соответствует комбинацию двоичных разрядов 110xxxxx, тогда группа состоит из того байта a и второй байт b. Если нет никакого байта b (потому что байт a был последний из байтов, которые будут считаны), или если байт b не соответствует комбинацию двоичных разрядов 10xxxxxx, тогда a UTFDataFormatException бросается. Иначе, группа преобразовывается в символ:
(char)(((a& 0x1F) << 6) | (b & 0x3F))
Если первый байт группы соответствует комбинацию двоичных разрядов 1110xxxx, тогда группа состоит из того байта a и еще два байта b и c. Если нет никакого байта c (потому что байт a был один из последних двух из байтов, которые будут считаны), или любой байт b или байт c не соответствует комбинацию двоичных разрядов 10xxxxxx, тогда a UTFDataFormatException бросается. Иначе, группа преобразовывается в символ:
(char)(((a & 0x0F) << 12) | ((b & 0x3F) << 6) | (c & 0x3F))
Если первый байт группы соответствует образец 1111xxxx или образец 10xxxxxx, тогда a UTFDataFormatException бросается. Если с концом файла встречаются в любое время во время этого всего процесса, то EOFException бросается.
После того, как каждая группа была преобразована в символ этим процессом, символы собираются в том же самом порядке, в котором их соответствующие группы были считаны из входного потока, чтобы сформировать a String, который возвращается.
Текущая установка порядка байтов игнорируется.
Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
Отметьте: Этот метод не должен использоваться в реализации форматов изображения, которые используют стандартный UTF-8, потому что измененный UTF-8, используемый здесь, является несовместимым со стандартным UTF-8.
readUTF в интерфейсе DataInputEOFException - если этот поток достигает конца прежде, чем считать все байты.UTFDataFormatException - если байты не представляют допустимое измененное кодирование UTF-8 строки.IOException - если ошибка ввода-вывода происходит.void readFully(byte[] b,
int off,
int len)
throws IOException
len байты от потока, и хранят их в b запуск в индексирует off. Если конец потока достигается, EOFException будет брошен. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readFully в интерфейсе DataInputb - массив байтов, которые будут записаны.off - стартовая позиция в пределах b записать в.len - максимальное количество bytes, чтобы читать.IndexOutOfBoundsException - если off отрицательно, len отрицательно, или off + len больше чем b.length.NullPointerException - если b null.EOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.void readFully(byte[] b)
throws IOException
b.length байты от потока, и хранят их в b запуск в индексирует 0. Если конец потока достигается, EOFException будет брошен. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
readFully в интерфейсе DataInputb - массив bytes.NullPointerException - если b null.EOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.void readFully(short[] s,
int off,
int len)
throws IOException
len шорты (подписал 16-разрядные целые числа) от потока согласно текущему порядку байтов, и хранят их в s запуск в индексирует off. Если конец потока достигается, EOFException будет брошен. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
s - массив шорт, которые будут записаны.off - стартовая позиция withinb, чтобы записать в.len - максимальное количество shorts, чтобы читать.IndexOutOfBoundsException - если off отрицательно, len отрицательно, или off + len больше чем s.length.NullPointerException - если s null.EOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.void readFully(char[] c,
int off,
int len)
throws IOException
len случайные работы (16-разрядные целые числа без знака) от потока согласно текущему порядку байтов, и хранят их в c запуск в индексирует off. Если конец потока достигается, EOFException будет брошен. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
c - массив случайных работ, которые будут записаны.off - стартовая позиция withinb, чтобы записать в.len - максимальное количество chars, чтобы читать.IndexOutOfBoundsException - если off отрицательно, len отрицательно, или off + len больше чем c.length.NullPointerException - если c null.EOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.void readFully(int[] i,
int off,
int len)
throws IOException
len ints (подписал 32-разрядные целые числа) от потока согласно текущему порядку байтов, и хранит их в i запуск в индексирует off. Если конец потока достигается, EOFException будет брошен. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
i - массив ints, который будет записан.off - стартовая позиция withinb, чтобы записать в.len - максимальное количество ints, чтобы читать.IndexOutOfBoundsException - если off отрицательно, len отрицательно, или off + len больше чем i.length.NullPointerException - если i null.EOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.void readFully(long[] l,
int off,
int len)
throws IOException
len longs (подписал 64-разрядные целые числа) от потока согласно текущему порядку байтов, и хранит их в l запуск в индексирует off. Если конец потока достигается, EOFException будет брошен. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
l - массив longs, который будет записан.off - стартовая позиция withinb, чтобы записать в.len - максимальное количество longs, чтобы читать.IndexOutOfBoundsException - если off отрицательно, len отрицательно, или off + len больше чем l.length.NullPointerException - если l null.EOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.void readFully(float[] f,
int off,
int len)
throws IOException
len плавания (32-разрядные плавания одинарной точности IEEE) от потока согласно текущему порядку байтов, и хранят их в f запуск в индексирует off. Если конец потока достигается, EOFException будет брошен. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
f - массив плаваний, которые будут записаны.off - стартовая позиция withinb, чтобы записать в.len - максимальное количество floats, чтобы читать.IndexOutOfBoundsException - если off отрицательно, len отрицательно, или off + len больше чем f.length.NullPointerException - если f null.EOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.void readFully(double[] d,
int off,
int len)
throws IOException
len удваивается (64-разрядные плавания двойной точности IEEE) от потока согласно текущему порядку байтов, и хранит их в d запуск в индексирует off. Если конец потока достигается, EOFException будет брошен. Разрядное смещение в потоке сбрасывается, чтобы обнулить прежде, чем чтение произойдет.
d - массив удваивается, чтобы быть записанным.off - стартовая позиция withinb, чтобы записать в.len - максимальное количество doubles, чтобы читать.IndexOutOfBoundsException - если off отрицательно, len отрицательно, или off + len больше чем d.length.NullPointerException - если d null.EOFException - если поток достигает конца прежде, чем считать все байты.IOException - если ошибка ввода-вывода происходит.long getStreamPosition()
throws IOException
IOException - если ошибка ввода-вывода происходит.int getBitOffset()
throws IOException
readBits метод. Значение 0 указывает на старший значащий бит, и значение 7 указывает на младший значащий бит считанного байта. Разрядное смещение устанавливается в 0, когда поток сначала открывается, и сбрасывается к 0 звонками seek, skipBytes, или любой read или readFully метод.
int содержа разрядное смещение между 0 и 7, включительно.IOException - если ошибка ввода-вывода происходит.setBitOffset(int)void setBitOffset(int bitOffset)
throws IOException
getStreamPosition, оставляется неизменным. Значение 0 указывает на старший значащий бит, и значение 7 указывает на младший значащий бит считанного байта.bitOffset - требуемое смещение, как int между 0 и 7, включительно.IllegalArgumentException - если bitOffset не между 0 и 7, включительно.IOException - если ошибка ввода-вывода происходит.getBitOffset()int readBit()
throws IOException
int со значением 0 или 1. Разрядное смещение совершенствуется одним и уменьшало по модулю 8.int содержа значение 0 или 1.EOFException - если поток достигает конца прежде, чем считать все биты.IOException - если ошибка ввода-вывода происходит.long readBits(int numBits)
throws IOException
long, с первым разрядным чтением, становящимся старшим значащим битом вывода. Чтение запускается в пределах байта, обозначенного getStreamPosition, в бите, данном getBitOffset. Разрядное смещение совершенствуется numBits и уменьшенный по модулю 8. Порядок байтов потока не имеет никакого эффекта на этот метод. Возвращаемое значение этого метода создается, как если бы биты были считаны по одному, и смещались в правую сторону возвращаемого значения, как показано следующим псевдокодом:
long accum = 0L; for (int i = 0; i < numBits i accum ="1;" Shift left one bit to make room accum ="readBit();" pre> Note that the result ofreadBits(32)may thus not be equal to that ofreadInt()if a reverse network byte order is being used (i.e.,getByteOrder() == false).If the end of the stream is encountered before all the bits have been read, an
EOFExceptionis thrown.
numBits - the number of bits to read, as an int
between 0 and 64, inclusive.long with the last bit
read stored in the least significant bit.IllegalArgumentException - if numBits
is not between 0 and 64, inclusive.EOFException - if the stream reaches the end before
reading all the bits.IOException - if an I/O error occurs.long length()
throws IOException
-1 is returned.long containing the length of the
stream, if known, or else -1.IOException - if an I/O error occurs.int skipBytes(int n)
throws IOException
skipBytes in interface DataInputn - an int containing the number of bytes to
be skipped.int representing the number of bytes skipped.IOException - if an I/O error occurs.long skipBytes(long n)
throws IOException
skipBytes(int) except
that it allows for a larger skip distance.n - a long containing the number of bytes to
be skipped.long representing the number of bytes
skipped.IOException - if an I/O error occurs.void seek(long pos) throws IOException
An IndexOutOfBoundsException will be thrown if
pos is smaller than the flushed position (as
returned by getflushedPosition).
It is legal to seek past the end of the file; an
EOFException will be thrown only if a read is
performed.
pos - a long containing the desired file
pointer position.IndexOutOfBoundsException - if pos is smaller
than the flushed position.IOException - if any other I/O error occurs.void mark()
reset. Unlike a standard
InputStream, all ImageInputStreams
support marking. Additionally, calls to mark and
reset may be nested arbitrarily.
Unlike the mark methods declared by the
Reader and InputStream interfaces, no
readLimit parameter is used. An arbitrary amount
of data may be read following the call to mark.
The bit position used by the readBits method
is saved and restored by each pair of calls to
mark and reset.
Note that it is valid for an ImageReader to call
flushBefore as part of a read operation.
Therefore, if an application calls mark prior to
passing that stream to an ImageReader, the application
should not assume that the marked position will remain valid after
the read operation has completed.
void reset()
throws IOException
mark.
Calls to reset without a corresponding call
to mark have no effect.
An IOException will be thrown if the previous
marked position lies in the discarded portion of the stream.
IOException - if an I/O error occurs.void flushBefore(long pos)
throws IOException
IndexOutOfBoundsException.
Calling flushBefore may allow classes
implementing this interface to free up resources such as memory
or disk space that are being used to store data from the
stream.
pos - a long containing the length of the
stream prefix that may be flushed.IndexOutOfBoundsException - if pos lies
in the flushed portion of the stream or past the current stream
position.IOException - if an I/O error occurs.void flush()
throws IOException
flushBefore(getStreamPosition()).IOException - if an I/O error occurs.long getFlushedPosition()
flushBefore.long.boolean isCached()
true if this ImageInputStream
caches data itself in order to allow seeking backwards.
Applications may consult this in order to decide how frequently,
or whether, to flush in order to conserve cache resources.true if this ImageInputStream
caches data.isCachedMemory(),
isCachedFile()boolean isCachedMemory()
true if this ImageInputStream
caches data itself in order to allow seeking backwards, and
the cache is kept in main memory. Applications may consult
this in order to decide how frequently, or whether, to flush
in order to conserve cache resources.true if this ImageInputStream
caches data in main memory.isCached(),
isCachedFile()boolean isCachedFile()
true if this ImageInputStream
caches data itself in order to allow seeking backwards, and
the cache is kept in a temporary file. Applications may consult
this in order to decide how frequently, or whether, to flush
in order to conserve cache resources.true if this ImageInputStream
caches data in a temporary file.isCached(),
isCachedMemory()void close()
throws IOException
IOExceptions or incorrect
behavior. Calling this method may allow classes implementing
this interface to release resources associated with the stream
such as memory, disk space, or file descriptors.close in interface AutoCloseableclose in interface CloseableIOException - if an I/O error occurs.
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.
DRAFT ea-b92