Spec-Zone.ru › OpenJDK 17

Класс ImageOutputStreamImpl

java.lang.Object
javax.imageio.stream.ImageInputStreamImpl
javax.imageio.stream.ImageOutputStreamImpl
Все реализованные интерфейсы:
Closeable, DataInput, DataOutput, AutoCloseable, ImageInputStream, ImageOutputStream
Непосредственные известные подклассы:
FileCacheImageOutputStream, FileImageOutputStream, MemoryCacheImageOutputStream
public abstract class ImageOutputStreamImpl extends ImageInputStreamImpl implements ImageOutputStream
Абстрактный класс, реализующий интерфейс ImageOutputStream. Этот класс разработан для уменьшения количества методов, которые должны быть реализованы подклассами.

Краткое описание полей

Поля, объявленные в классе javax.imageio.stream.ImageInputStreamImpl

bitOffset, byteOrder, flushedPos, streamPos

Краткое описание конструкторов

Конструктор Описание
ImageOutputStreamImpl()
Создаёт ImageOutputStreamImpl.

Краткое описание методов

Модификатор и тип Метод Описание
protected final void flushBits()
Если смещение бита не равно нулю, обнуляет оставшиеся биты в текущем байте и продвигает позицию потока на один байт.
void write(byte[] b)
Записывает последовательность байтов в поток по текущей позиции.
void writeBit(int bit)
Записывает один бит, заданный младшим битом аргумента, в поток по текущей позиции бита в пределах текущей позиции байта.
void writeBits(long bits, int numBits)
Записывает последовательность битов, заданную numBits младшими битами bits аргумента слева направо, в поток по текущей позиции бита в пределах текущей позиции байта.
void writeBoolean(boolean v)
Записывает значение boolean в поток.
void writeByte(int v)
Записывает 8 младших битов v в поток.
void writeBytes(String s)
Записывает строку в выходной поток.
void writeChar(int v)
Этот метод является синонимом для writeShort.
void writeChars(char[] c, int off, int len)
Записывает последовательность символов в поток по текущей позиции.
void writeChars(String s)
Записывает строку в выходной поток.
void writeDouble(double v)
Записывает значение double, состоящее из четырёх байтов, в выходной поток.
void writeDoubles(double[] d, int off, int len)
Записывает последовательность чисел с плавающей запятой двойной точности в поток по текущей позиции.
void writeFloat(float v)
Записывает значение float, состоящее из четырёх байтов, в выходной поток.
void writeFloats(float[] f, int off, int len)
Записывает последовательность чисел с плавающей запятой одинарной точности в поток по текущей позиции.
void writeInt(int v)
Записывает 32 бита v в поток.
void writeInts(int[] i, int off, int len)
Записывает последовательность целых чисел в поток по текущей позиции.
void writeLong(long v)
Записывает 64 бита v в поток.
void writeLongs(long[] l, int off, int len)
Записывает последовательность длинных целых чисел в поток по текущей позиции.
void writeShort(int v)
Записывает 16 младших битов v в поток.
void writeShorts(short[] s, int off, int len)
Записывает последовательность коротких целых чисел в поток по текущей позиции.
void writeUTF(String s)
Записывает два байта информации о длине в выходной поток в сетевом порядке байтов, а затем — представление в формате модифицированной UTF-8 каждого символа в строке %%%CODE_BLOCK_66%%.

Методы, объявленные в классе javax.imageio.stream.ImageInputStreamImpl

checkClosed, close, finalize, flush, flushBefore, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, isCached, isCachedFile, isCachedMemory, length, mark, read, read, 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, seek, setBitOffset, setByteOrder, skipBytes, skipBytes

Методы, объявленные в классе java.lang.Object

clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Методы, объявленные в интерфейсе javax.imageio.stream.ImageInputStream

close, flush, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, isCached, isCachedFile, isCachedMemory, length, mark, read, read, 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, seek, setBitOffset, setByteOrder, skipBytes, skipBytes

Методы, объявленные в интерфейсе javax.imageio.stream.ImageOutputStream

flushBefore, write, write

Подробное описание конструкторов

ImageOutputStreamImpl

public ImageOutputStreamImpl()
Создаёт ImageOutputStreamImpl.

Подробное описание методов

write

public void write(byte[] b) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает последовательность байтов в поток в текущей позиции. Если b.length равно 0, ничего не записывается. Сначала записывается байт b[0], затем байт b[1], и так далее.

Если битовый сдвиг в потоке не равен нулю, остаток текущего байта дополняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Определено в:
write в интерфейсе DataOutput
Определено в:
write в интерфейсе ImageOutputStream
Параметры:
b - массив byte для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeBoolean

public void writeBoolean(boolean v) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает значение boolean в поток. Если v равно true, записывается значение (byte)1; если v равно false, записывается значение (byte)0.

Если битовый сдвиг в потоке не равен нулю, остаток текущего байта дополняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Определено в:
writeBoolean в интерфейсе DataOutput
Определено в:
writeBoolean в интерфейсе ImageOutputStream
Параметры:
v - записываемое значение boolean.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeByte

public void writeByte(int v) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает 8 младших битов v в поток. 24 старших бита v игнорируются. (Это означает, что writeByte делает ровно то же самое, что и write для целочисленного аргумента.)

Если битовый сдвиг в потоке не равен нулю, остаток текущего байта дополняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Определено в:
writeByte в интерфейсе DataOutput
Определено в:
writeByte в интерфейсе ImageOutputStream
Параметры:
v - int, содержащий значение байта для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeShort

public void writeShort(int v) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает 16 младших битов v в поток. 16 старших битов v игнорируются. Если поток использует сетевой порядок байтов, записанные байты будут:
 (byte)((v >> 8) & 0xff)
 (byte)(v & 0xff)
 
В противном случае, записанные байты будут:
 (byte)(v & 0xff)
 (byte)((v >> 8) & 0xff)
 

Если битовый сдвиг в потоке не равен нулю, остаток текущего байта дополняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Определено в:
writeShort в интерфейсе DataOutput
Определено в:
writeShort в интерфейсе ImageOutputStream
Параметры:
v - int, содержащий значение типа short для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeChar

public void writeChar(int v) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Этот метод является синонимом для writeShort.
Определено в:
writeChar в интерфейсе DataOutput
Определено в:
writeChar в интерфейсе ImageOutputStream
Параметры:
v - int, содержащий значение char (unsigned short) для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.
См. также:
  • ImageOutputStream.writeShort(int)

writeInt

public void writeInt(int v) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает 32 бита v в поток. Если поток использует сетевой порядок байтов, записанные байты будут:
 (byte)((v >> 24) & 0xff)
 (byte)((v >> 16) & 0xff)
 (byte)((v >> 8) & 0xff)
 (byte)(v & 0xff)
 
В противном случае, записанные байты будут:
 (byte)(v & 0xff)
 (byte)((v >> 8) & 0xff)
 (byte)((v >> 16) & 0xff)
 (byte)((v >> 24) & 0xff)
 

Если битовый сдвиг в потоке не равен нулю, остаток текущего байта дополняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Определено в:
writeInt в интерфейсе DataOutput
Определено в:
writeInt в интерфейсе ImageOutputStream
Параметры:
v - int, содержащий значение для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeLong

public void writeLong(long v) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает 64 бита v в поток. Если поток использует сетевой порядок байтов, записанные байты будут:
 (byte)((v >> 56) & 0xff)
 (byte)((v >> 48) & 0xff)
 (byte)((v >> 40) & 0xff)
 (byte)((v >> 32) & 0xff)
 (byte)((v >> 24) & 0xff)
 (byte)((v >> 16) & 0xff)
 (byte)((v >> 8) & 0xff)
 (byte)(v & 0xff)
 
В противном случае, записанные байты будут:
 (byte)(v & 0xff)
 (byte)((v >> 8) & 0xff)
 (byte)((v >> 16) & 0xff)
 (byte)((v >> 24) & 0xff)
 (byte)((v >> 32) & 0xff)
 (byte)((v >> 40) & 0xff)
 (byte)((v >> 48) & 0xff)
 (byte)((v >> 56) & 0xff)
 

Если битовый сдвиг в потоке не равен нулю, остаток текущего байта дополняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Определено в:
writeLong в интерфейсе DataOutput
Определено в:
writeLong в интерфейсе ImageOutputStream
Параметры:
v - long, содержащий значение для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeFloat

public void writeFloat(float v) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает значение float, состоящее из четырёх байтов, в выходной поток. Это делается так, как если бы сначала это значение float было преобразовано в int точно так же, как в методе Float.floatToIntBits, а затем значение типа int было записано точно так же, как в методе writeInt.

Если битовый сдвиг в потоке не равен нулю, остаток текущего байта дополняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Определено в:
writeFloat в интерфейсе DataOutput
Определено в:
writeFloat в интерфейсе ImageOutputStream
Параметры:
v - float, содержащий значение для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeDouble

public void writeDouble(double v) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает значение double, состоящее из восьми байтов, в выходной поток. Это делается так, как если бы сначала это значение double было преобразовано в long точно так же, как в методе Double.doubleToLongBits, а затем значение типа long было записано точно так же, как в методе writeLong.

Если битовый сдвиг в потоке не равен нулю, остаток текущего байта дополняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Определено в:
writeDouble в интерфейсе DataOutput
Определено в:
writeDouble в интерфейсе ImageOutputStream
Параметры:
v - double, содержащий значение для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeBytes

public void writeBytes(String s) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает строку в выходной поток. Для каждого символа в строке s, взятого в порядке следования, один байт записывается в выходной поток. Если s равно null, выбрасывается NullPointerException.

Если s.length равно нулю, то байты не записываются. В противном случае, сначала записывается символ s[0], затем s[1], и так далее; последний записанный символ - s[s.length-1]. Для каждого символа записывается один байт, младший байт, точно так же, как и в методе writeByte. Восемь старших битов каждого символа в строке игнорируются.

Если битовый сдвиг в потоке не равен нулю, остаток текущего байта дополняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Определено в:
writeBytes в интерфейсе DataOutput
Определено в:
writeBytes в интерфейсе ImageOutputStream
Параметры:
s - String, содержащий значение для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeChars

public void writeChars(String s) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает строку в поток вывода. Для каждого символа в строке s, взятом в порядке следования, в поток вывода записываются два байта, упорядоченные в соответствии с текущей установкой порядка байтов. Если используется сетевой порядок байтов, сначала записывается старший байт; порядок меняется в противном случае. Если s равно null, выбрасывается NullPointerException.

Если s.length равно нулю, то байты не записываются. В противном случае сначала записывается символ s[0], затем s[1], и так далее; последний записанный символ — s[s.length-1].

Если битовый сдвиг внутри потока не равен нулю, остаток текущего байта заполняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Указано в:
writeChars в интерфейсе DataOutput
Указано в:
writeChars в интерфейсе ImageOutputStream
Параметры:
s - строка, содержащая значение, которое нужно записать.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeUTF

public void writeUTF(String s) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает два байта информации о длине в поток вывода в сетевом порядке байтов, за которыми следует представление изменённого UTF-8 каждого символа в строке s. Если s равно null, выбрасывается NullPointerException. Каждый символ в строке s преобразуется в группу из одного, двух или трёх байтов в зависимости от значения символа.

Если символ c находится в диапазоне от \u0001 до \u007f, он представляется одним байтом:

 (byte)c
 

Если символ c равен \u0000 или находится в диапазоне от \u0080 до \u07ff, то он представляется двумя байтами, которые записываются в указанном порядке:


 (byte)(0xc0 | (0x1f & (c >> 6)))
 (byte)(0x80 | (0x3f & c))
 

Если символ c находится в диапазоне от \u0800 до uffff, то он представляется тремя байтами, которые записываются в указанном порядке:


 (byte)(0xe0 | (0x0f & (c >> 12)))
 (byte)(0x80 | (0x3f & (c >> 6)))
 (byte)(0x80 | (0x3f & c))
 

Сначала вычисляется общее количество байтов, необходимых для представления всех символов в s. Если это число больше 65535, то выбрасывается UTFDataFormatException. В противном случае эта длина записывается в поток вывода точно так же, как метод writeShort; после этого записывается представление каждого символа в строке s — один, два или три байта.

Текущая установка порядка байтов игнорируется.

Если битовый сдвиг внутри потока не равен нулю, остаток текущего байта заполняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Примечание: Этот метод не следует использовать в реализации форматов изображений, которые используют стандартный UTF-8, так как изменённый UTF-8, используемый здесь, несовместим со стандартным UTF-8.

Указано в:
writeUTF в интерфейсе DataOutput
Указано в:
writeUTF в интерфейсе ImageOutputStream
Параметры:
s - строка, содержащая значение, которое нужно записать.
Исключения:
UTFDataFormatException - если изменённое UTF-8-представление s требует более 65536 байтов.
IOException - если произошла ошибка ввода-вывода.

writeShorts

public void writeShorts(short[] s, int off, int len) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает последовательность коротких целых чисел в поток в текущей позиции. Если len равно 0, ничего не записывается. Короткий целый тип данных s[off] записывается первым, затем короткий целый тип данных s[off + 1] и так далее. Порядок байтов потока используется для определения порядка записи отдельных байтов.

Если битовый сдвиг внутри потока не равен нулю, остаток текущего байта заполняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Указано в:
writeShorts в интерфейсе ImageOutputStream
Параметры:
s - массив коротких целых чисел, которые нужно записать.
off - начальный смещение в данных.
len - количество коротких целых чисел для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeChars

public void writeChars(char[] c, int off, int len) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает последовательность символов в поток в текущей позиции. Если len равно 0, ничего не записывается. Символ c[off] записывается первым, затем символ c[off + 1] и так далее. Порядок байтов потока используется для определения порядка записи отдельных байтов.

Если битовый сдвиг внутри потока не равен нулю, остаток текущего байта заполняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Указано в:
writeChars в интерфейсе ImageOutputStream
Параметры:
c - массив символов, которые нужно записать.
off - начальный смещение в данных.
len - количество символов для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeInts

public void writeInts(int[] i, int off, int len) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает последовательность целых чисел в поток в текущей позиции. Если len равно 0, ничего не записывается. Целое число i[off] записывается первым, затем целое число i[off + 1] и так далее. Порядок байтов потока используется для определения порядка записи отдельных байтов.

Если битовый сдвиг внутри потока не равен нулю, остаток текущего байта заполняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Указано в:
writeInts в интерфейсе ImageOutputStream
Параметры:
i - массив целых чисел, которые нужно записать.
off - начальный смещение в данных.
len - количество целых чисел для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeLongs

public void writeLongs(long[] l, int off, int len) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает последовательность длинных целых чисел в поток в текущей позиции. Если len равно 0, ничего не записывается. Длинное целое число l[off] записывается первым, затем длинное целое число l[off + 1] и так далее. Порядок байтов потока используется для определения порядка записи отдельных байтов.

Если битовый сдвиг внутри потока не равен нулю, остаток текущего байта заполняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Указано в:
writeLongs в интерфейсе ImageOutputStream
Параметры:
l - массив длинных целых чисел, которые нужно записать.
off - начальный смещение в данных.
len - количество длинных целых чисел для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeFloats

public void writeFloats(float[] f, int off, int len) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает последовательность чисел с плавающей точкой в поток в текущей позиции. Если len равно 0, ничего не записывается. Число с плавающей точкой f[off] записывается первым, затем число с плавающей точкой f[off + 1] и так далее. Порядок байтов потока используется для определения порядка записи отдельных байтов.

Если битовый сдвиг внутри потока не равен нулю, остаток текущего байта заполняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Указано в:
writeFloats в интерфейсе ImageOutputStream
Параметры:
f - массив чисел с плавающей точкой, которые нужно записать.
off - начальный смещение в данных.
len - количество чисел с плавающей точкой для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeDoubles

public void writeDoubles(double[] d, int off, int len) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает последовательность чисел с двойной точностью в поток в текущей позиции. Если len равно 0, ничего не записывается. Число с двойной точностью d[off] записывается первым, затем число с двойной точностью d[off + 1] и так далее. Порядок байтов потока используется для определения порядка записи отдельных байтов.

Если битовый сдвиг внутри потока не равен нулю, остаток текущего байта заполняется нулями и записывается сначала. Битовый сдвиг будет равен 0 после записи.

Указано в:
writeDoubles в интерфейсе ImageOutputStream
Параметры:
d - массив чисел с двойной точностью, которые нужно записать.
off - начальный смещение в данных.
len - количество чисел с двойной точностью для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeBit

public void writeBit(int bit) throws IOException
Описание скопировано из интерфейса: ImageOutputStream
Записывает один бит, заданный младшим битом аргумента, в поток в текущей позиции смещения бита внутри текущей байтовой позиции. Верхние 31 бит аргумента игнорируются. Заданный бит заменяет предыдущий бит в этой позиции. Смещение бита увеличивается на единицу и уменьшается по модулю 8.

Если какие-либо биты конкретного байта никогда не устанавливались во время сброса байта в место назначения, эти биты автоматически устанавливаются в 0.

Указано:
writeBit в интерфейсе ImageOutputStream
Параметры:
bit - целое число int, младший бит которого должен быть записан в поток.
Исключения:
IOException - если произошла ошибка ввода-вывода.

writeBits

public void writeBits(long bits, int numBits) throws IOException
Описание скопировано из интерфейса: ImageOutputStream
Записывает последовательность битов, заданную numBits младшими битами аргумента bits в порядке слева направо, в поток в текущей позиции смещения бита внутри текущей байтовой позиции. Верхние 64 - numBits биты аргумента игнорируются. Смещение бита увеличивается на numBits и уменьшается по модулю 8. Обратите внимание, что смещение бита 0 всегда указывает на наиболее значимый бит байта, а байты битов записываются последовательно по мере их обнаружения. Таким образом, запись битов всегда фактически выполняется в сетевом порядке байтов. Фактическое назначение порядка байтов потока игнорируется.

Данные битов могут накапливаться в памяти неограниченно, до тех пор, пока не будет вызван flushBefore. В этот момент все данные битов до сброшенной позиции будут записаны.

Если какие-либо биты конкретного байта никогда не устанавливались во время сброса байта в место назначения, эти биты автоматически устанавливаются в 0.

Указано:
writeBits в интерфейсе ImageOutputStream
Параметры:
bits - long, содержащий биты для записи, начиная с бита в позиции numBits - 1 и заканчивая младшим битом.
numBits - целое число int в диапазоне от 0 до 64 включительно.
Исключения:
IOException - если произошла ошибка ввода-вывода.

flushBits

protected final void flushBits() throws IOException
Если смещение бита отлично от нуля, принудительно устанавливает оставшиеся биты в текущем байте в 0 и перемещает позицию потока на одну позицию. Этот метод должен вызываться подклассами в начале методов write(int) и write(byte[], int, int).
Исключения:
IOException - если произошла ошибка ввода-вывода.

© 1993, 2021, 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.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/javax/imageio/stream/ImageOutputStreamImpl.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API