Класс FileImageOutputStream
- Все реализуемые интерфейсы:
Closeable, DataInput, DataOutput, AutoCloseable, ImageInputStream, ImageOutputStream
public class FileImageOutputStream extends ImageOutputStreamImpl
ImageOutputStream, которая записывает выходные данные непосредственно в File или RandomAccessFile.Краткое описание полей
Поля, объявленные в классе ImageInputStreamImpl
bitOffset, byteOrder, flushedPos, streamPos | Модификатор и тип | Поле | Описание |
|---|---|---|
protected int |
bitOffset |
Текущий битовый сдвиг в потоке. |
protected ByteOrder |
byteOrder |
Порядок байтов потока в виде экземпляра класса перечисления java.nio.ByteOrder, где ByteOrder.BIG_ENDIAN обозначает сетевой порядок байтов, а ByteOrder.LITTLE_ENDIAN — обратный порядок. |
protected long |
flushedPos |
Позиция, до которой данные могут быть отброшены. |
protected long |
streamPos |
Текущая позиция чтения в потоке. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
FileImageOutputStream |
Создает FileImageOutputStream, который будет записывать данные в заданный File. |
FileImageOutputStream |
Создает FileImageOutputStream, который будет записывать данные в заданный RandomAccessFile. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
read() |
Считывает один байт из потока и возвращает его как int от 0 до 255. |
int |
read |
Считывает из потока до len байт и сохраняет их в b, начиная с индекса off. |
void |
seek |
Устанавливает текущую позицию потока и сбрасывает битовый сдвиг в 0. |
void |
write |
Записывает последовательность байтов в поток в текущей позиции. |
void |
write |
Записывает один байт в поток в текущей позиции. |
Методы, объявленные в классе ImageOutputStreamImpl
flushBits, write, writeBit, writeBits, writeBoolean, writeByte, writeBytes, writeChar, writeChars, writeChars, writeDouble, writeDoubles, writeFloat, writeFloats, writeInt, writeInts, writeLong, writeLongs, writeShort, writeShorts, writeUTF | Модификатор и тип | Метод | Описание |
|---|---|---|
protected final void |
flushBits() |
Если битовый сдвиг ненулевой, устанавливает оставшиеся биты текущего байта в 0 и сдвигает позицию потока на один байт. |
void |
write |
Записывает последовательность байтов в поток в текущей позиции. |
void |
writeBit |
Записывает один бит, заданный младшим битом аргумента, в поток в текущем битовом сдвиге текущей позиции байта. |
void |
writeBits |
Записывает последовательность битов, заданную numBits младшими битами аргумента bits, в порядке слева направо, в поток в текущем битовом сдвиге текущей позиции байта. |
void |
writeBoolean |
Записывает в поток значение boolean. |
void |
writeByte |
Записывает в поток 8 младших битов v. |
void |
writeBytes |
Записывает строку в выходной поток. |
void |
writeChar |
Этот метод является синонимом writeShort. |
void |
writeChars |
Записывает последовательность символов в поток в текущей позиции. |
void |
writeChars |
Записывает строку в выходной поток. |
void |
writeDouble |
Записывает значение double, состоящее из четырех байтов, в выходной поток. |
void |
writeDoubles |
Записывает последовательность значений double в поток в текущей позиции. |
void |
writeFloat |
Записывает значение float, состоящее из четырех байтов, в выходной поток. |
void |
writeFloats |
Записывает последовательность значений float в поток в текущей позиции. |
void |
writeInt |
Записывает 32 бита v в поток. |
void |
writeInts |
Записывает последовательность значений int в поток в текущей позиции. |
void |
writeLong |
Записывает 64 бита v в поток. |
void |
writeLongs |
Записывает последовательность значений long в поток в текущей позиции. |
void |
writeShort |
Записывает в поток 16 младших битов v. |
void |
writeShorts |
Записывает последовательность значений short в поток в текущей позиции. |
void |
writeUTF |
Записывает в выходной поток два байта информации о длине в сетевом порядке байтов, а затем представление модифицированного UTF-8 каждого символа строки s. |
Методы, объявленные в классе ImageInputStreamImpl
checkClosed, close, flush, flushBefore, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, isCached, isCachedFile, isCachedMemory, length, mark, read, readBit, readBits, readBoolean, readByte, readBytes, readChar, readDouble, readFloat, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedInt, readUnsignedShort, readUTF, reset, setBitOffset, setByteOrder, skipBytes, skipBytes | Модификатор и тип | Метод | Описание |
|---|---|---|
protected final void |
checkClosed() |
Вызывает IOException, если поток закрыт. |
void |
close() |
Закрывает поток. |
void |
flush() |
Отбрасывает начальную позицию потока до текущей позиции потока. |
void |
flushBefore |
Отбрасывает начальную часть потока до указанной позиции. |
int |
getBitOffset() |
Возвращает текущий битовый сдвиг в виде целого числа от 0 до 7 включительно. |
ByteOrder |
getByteOrder() |
Возвращает порядок байтов, в котором значения данных будут считываться из этого потока, в виде экземпляра перечисления java.nio.ByteOrder. |
long |
getFlushedPosition() |
Возвращает самую раннюю позицию в потоке, к которой можно перейти. |
long |
getStreamPosition() |
Возвращает текущую позицию потока в байтах. |
boolean |
isCached() |
Реализация по умолчанию возвращает false. |
boolean |
isCachedFile() |
Реализация по умолчанию возвращает false. |
boolean |
isCachedMemory() |
Реализация по умолчанию возвращает false. |
long |
length() |
Возвращает -1L, указывая, что длина потока неизвестна. |
void |
mark() |
Помещает текущую позицию потока в стек отмеченных позиций. |
int |
read |
Вспомогательный метод, вызывающий read(b, 0, b.length). |
int |
readBit() |
Считывает один бит из потока и возвращает его как int со значением 0 или 1. |
long |
readBits |
Считывает битовую строку из потока и возвращает ее как long; первый считанный бит становится старшим битом результата. |
boolean |
readBoolean() |
Считывает байт из потока и возвращает значение boolean, равное true, если оно ненулевое, или false, если оно равно нулю. |
byte |
readByte() |
Считывает байт из потока и возвращает его как значение byte. |
void |
readBytes |
Считывает из потока до len байт и изменяет переданный IIOByteBuffer, указывая массив байтов, смещение и длину, по которым можно найти данные. |
char |
readChar() |
Эквивалентен readUnsignedShort, за исключением того, что результат возвращается с использованием типа данных char. |
double |
readDouble() |
Считывает из потока 8 байтов, (концептуально) объединяет их в соответствии с текущим порядком байтов и возвращает результат как double. |
float |
readFloat() |
Считывает из потока 4 байта, (концептуально) объединяет их в соответствии с текущим порядком байтов и возвращает результат как float. |
void |
readFully |
Считывает из потока b.length байт и сохраняет их в b, начиная с индекса 0. |
void |
readFully |
Считывает из потока len байт и сохраняет их в b, начиная с индекса off. |
void |
readFully |
Считывает len символов (беззнаковых 16-битных целых чисел) из потока в соответствии с текущим порядком байтов и сохраняет их в c, начиная с индекса off. |
void |
readFully |
Считывает len значений double (64-битных чисел с плавающей точкой двойной точности IEEE) из потока в соответствии с текущим порядком байтов и сохраняет их в d, начиная с индекса off. |
void |
readFully |
Считывает len значений float (32-битных чисел с плавающей точкой одинарной точности IEEE) из потока в соответствии с текущим порядком байтов и сохраняет их в f, начиная с индекса off. |
void |
readFully |
Считывает len значений int (знаковых 32-битных целых чисел) из потока в соответствии с текущим порядком байтов и сохраняет их в i, начиная с индекса off. |
void |
readFully |
Считывает len значений long (знаковых 64-битных целых чисел) из потока в соответствии с текущим порядком байтов и сохраняет их в l, начиная с индекса off. |
void |
readFully |
Считывает len значений short (знаковых 16-битных целых чисел) из потока в соответствии с текущим порядком байтов и сохраняет их в s, начиная с индекса off. |
int |
readInt() |
Считывает из потока 4 байта, (концептуально) объединяет их в соответствии с текущим порядком байтов и возвращает результат как int. |
String |
readLine() |
Считывает следующую строку текста из входного потока. |
long |
readLong() |
Считывает из потока 8 байтов, (концептуально) объединяет их в соответствии с текущим порядком байтов и возвращает результат как long. |
short |
readShort() |
Считывает из потока два байта, (концептуально) объединяет их в соответствии с текущим порядком байтов и возвращает результат как значение short. |
int |
readUnsignedByte() |
Считывает байт из потока, (концептуально) преобразует его в int, применяет маску 0xff, чтобы удалить биты знакового расширения, и возвращает результат как значение byte. |
long |
readUnsignedInt() |
Считывает из потока 4 байта, (концептуально) объединяет их в соответствии с текущим порядком байтов, преобразует результат в long, применяет к нему маску 0xffffffffL, чтобы удалить биты знакового расширения, и возвращает результат как беззнаковое значение long. |
int |
readUnsignedShort() |
Считывает из потока два байта, (концептуально) объединяет их в соответствии с текущим порядком байтов, преобразует полученное значение в int, применяет маску 0xffff, чтобы удалить биты знакового расширения, и возвращает результат как беззнаковое значение int. |
String |
readUTF() |
Считывает строку, закодированную в формате модифицированного UTF-8. |
void |
reset() |
Восстанавливает текущие байтовую и битовую позиции потока из стека отмеченных позиций. |
void |
setBitOffset |
Устанавливает битовый сдвиг в целое число от 0 до 7 включительно. |
void |
setByteOrder |
Устанавливает требуемый порядок байтов для последующего считывания значений данных из этого потока. |
int |
skipBytes |
Сдвигает текущую позицию потока, вызывая seek(getStreamPosition() + n). |
long |
skipBytes |
Сдвигает текущую позицию потока, вызывая seek(getStreamPosition() + n). |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект другому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удален в будущей версии. Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
Методы, объявленные в интерфейсе ImageOutputStream
flushBefore | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
flushBefore |
Сбрасывает все данные до указанной позиции в базовое место назначения, например в OutputStream или File. |
Подробное описание конструкторов
FileImageOutputStream
public FileImageOutputStream(File f) throws FileNotFoundException, IOException
FileImageOutputStream, который будет записывать данные в заданный File.- Параметры:
-
f—File, в который будут записываться данные. - Исключения:
-
IllegalArgumentException— еслиfравенnull. -
FileNotFoundException— еслиfне обозначает обычный файл или его не удается открыть для чтения и записи по какой-либо другой причине. -
IOException— если произошла ошибка ввода-вывода.
FileImageOutputStream
public FileImageOutputStream(RandomAccessFile raf)
FileImageOutputStream, который будет записывать данные в заданный RandomAccessFile.- Параметры:
-
raf—RandomAccessFile, в который будут записываться данные. - Исключения:
-
IllegalArgumentException— еслиrafравенnull.
Подробное описание методов
read
public int read() throws IOException
ImageInputStreamImplint от 0 до 255. Если достигнут конец файла, возвращается -1. Подклассы должны предоставить реализацию этого метода. Реализация в подклассе должна обновить позицию потока перед завершением работы.
Перед чтением битовый сдвиг в потоке должен быть сброшен в ноль.
- Определено в:
-
readв интерфейсеImageInputStream - Определено в:
-
readв классеImageInputStreamImpl - Возвращает:
- значение следующего байта в потоке или
-1, если достигнут конец файла. - Исключения:
-
IOException— если поток закрыт.
read
public int read(byte[] b, int off, int len) throws IOException
ImageInputStreamImpllen байт и сохраняет их в b, начиная с индекса off. Если ни один байт нельзя прочитать, поскольку достигнут конец потока, возвращается -1. Перед чтением битовый сдвиг в потоке должен быть сброшен в ноль.
Подклассы должны предоставить реализацию этого метода. Реализация в подклассе должна обновить позицию потока перед завершением работы.
- Определено в:
-
readв интерфейсеImageInputStream - Определено в:
-
readв классеImageInputStreamImpl - Параметры:
-
b— массив байтов для записи. -
off— начальная позиция вb, начиная с которой выполняется запись. -
len— максимальное количество байтов для чтения. - Возвращает:
- фактическое количество прочитанных байтов или
-1, обозначающее конец файла. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
write
public void write(int b) throws IOException
ImageOutputStreamb игнорируются. Если битовый сдвиг в потоке ненулевой, оставшаяся часть текущего байта дополняется нулями и сначала записывается. После записи битовый сдвиг будет равен 0. Для гарантии этого реализаторы могут использовать метод flushBits класса ImageOutputStreamImpl.
- Параметры:
-
b—int, младшие 8 битов которого будут записаны. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
write
public void write(byte[] b, int off, int len) throws IOException
ImageOutputStreamlen равно 0, ничего не записывается. Сначала записывается байт b[off], затем байт b[off + 1] и так далее. Если битовый сдвиг в потоке ненулевой, оставшаяся часть текущего байта дополняется нулями и сначала записывается. После записи битовый сдвиг будет равен 0. Для гарантии этого реализаторы могут использовать метод flushBits класса ImageOutputStreamImpl.
- Параметры:
-
b— массивbyteдля записи. -
off— начальное смещение в данных. -
len— количествоbyteдля записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
seek
public void seek(long pos) throws IOException
EOFException будет вызвано только при выполнении чтения. Длина файла не увеличится, пока не будет выполнена запись.- Параметры:
-
pos—long, содержащий требуемую позицию указателя файла. - Исключения:
-
IndexOutOfBoundsException— еслиposменьше сброшенной позиции. -
IOException— если произошла любая другая ошибка ввода-вывода.
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.