Класс ImageOutputStreamImpl
- Все реализуемые интерфейсы:
Closeable, DataInput, DataOutput, AutoCloseable, ImageInputStream, ImageOutputStream
- Прямые известные подклассы:
FileCacheImageOutputStream, FileImageOutputStream, MemoryCacheImageOutputStream
public abstract class ImageOutputStreamImpl extends ImageInputStreamImpl implements ImageOutputStream
ImageOutputStream. Этот класс предназначен для сокращения количества методов, которые должны быть реализованы подклассами.Краткое описание полей
Поля, объявленные в классе 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 |
Текущая позиция чтения в потоке. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ImageOutputStreamImpl() |
Создает ImageOutputStreamImpl. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
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 |
Записывает в выходной поток два байта информации о длине в сетевом порядке байтов, а затем представление каждого символа строки s в формате модифицированного UTF-8. |
Методы, объявленные в классе ImageInputStreamImpl
checkClosed, close, 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 | Модификатор и тип | Метод | Описание |
|---|---|---|
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() |
Помещает текущую позицию потока в стек отмеченных позиций. |
abstract int |
read() |
Считывает из потока один байт и возвращает его как int в диапазоне от 0 до 255. |
int |
read |
Вспомогательный метод, вызывающий read(b, 0, b.length). |
abstract int |
read |
Считывает из потока не более len байтов и сохраняет их в b, начиная с индекса off. |
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 |
seek |
Устанавливает текущую позицию потока в указанное место. |
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, write, write | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
flushBefore |
Сбрасывает все данные до указанной позиции в нижележащий приемник, например в OutputStream или File. |
void |
write |
Записывает последовательность байтов в поток с текущей позиции. |
void |
write |
Записывает один байт в поток с текущей позиции. |
Подробное описание конструкторов
ImageOutputStreamImpl
public ImageOutputStreamImpl()
ImageOutputStreamImpl.Подробное описание методов
write
public void write(byte[] b) throws IOException
ImageOutputStreamb.length равно 0, ничего не записывается. Сначала записывается байт b[0], затем байт b[1] и так далее. Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeв интерфейсеDataOutput - Определено в:
-
writeв интерфейсеImageOutputStream - Параметры:
-
b— массивbyteдля записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeBoolean
public void writeBoolean(boolean v) throws IOException
ImageOutputStreamboolean в поток. Если v равно true, записывается значение (byte)1; если v равно false, записывается значение (byte)0. Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeBooleanв интерфейсеDataOutput - Определено в:
-
writeBooleanв интерфейсеImageOutputStream - Параметры:
-
v— значениеbooleanдля записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeByte
public void writeByte(int v) throws IOException
ImageOutputStreamv. 24 старших бита значения v игнорируются. (Это означает, что writeByte выполняет в точности то же действие, что и write для аргумента типа integer.) Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeByteв интерфейсеDataOutput - Определено в:
-
writeByteв интерфейсеImageOutputStream - Параметры:
-
v—int, содержащий значение байта для записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeShort
public void writeShort(int v) throws IOException
ImageOutputStreamv. 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
ImageOutputStreamwriteShort.- Определено в:
-
writeCharв интерфейсеDataOutput - Определено в:
-
writeCharв интерфейсеImageOutputStream - Параметры:
-
v—int, содержащий значение char (беззнаковый short) для записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода. - См. также:
writeInt
public void writeInt(int v) throws IOException
ImageOutputStreamv. Если в потоке используется сетевой порядок байтов, записанные байты будут расположены в следующем порядке: (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
ImageOutputStreamv. Если в потоке используется сетевой порядок байтов, записанные байты будут расположены в следующем порядке: (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
ImageOutputStreamfloat, состоящее из четырех байтов. При этом сначала значение float преобразуется в int точно так же, как в методе Float.floatToIntBits, а затем значение int записывается точно так же, как в методе writeInt. Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeFloatв интерфейсеDataOutput - Определено в:
-
writeFloatв интерфейсеImageOutputStream - Параметры:
-
v—float, содержащий значение для записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeDouble
public void writeDouble(double v) throws IOException
ImageOutputStreamdouble, состоящее из четырех байтов. При этом сначала значение double преобразуется в long точно так же, как в методе Double.doubleToLongBits, а затем значение long записывается точно так же, как в методе writeLong. Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeDoubleв интерфейсеDataOutput - Определено в:
-
writeDoubleв интерфейсеImageOutputStream - Параметры:
-
v—double, содержащий значение для записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeBytes
public void writeBytes(String s) throws IOException
ImageOutputStreams, взятого по порядку, в выходной поток записывается один байт. Если 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
ImageOutputStreams, взятого по порядку, в выходной поток записываются два байта в соответствии с текущей настройкой порядка байтов. Если используется сетевой порядок байтов, сначала записывается старший байт; в противном случае порядок обратный. Если s является null, генерируется NullPointerException. Если s.length равно нулю, байты не записываются. В противном случае сначала записывается символ s[0], затем s[1] и так далее; последним записывается символ s[s.length-1].
Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeCharsв интерфейсеDataOutput - Определено в:
-
writeCharsв интерфейсеImageOutputStream - Параметры:
-
s—String, содержащий значение для записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeUTF
public void writeUTF(String s) throws IOException
ImageOutputStreams в кодировке modified UTF-8. Если 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, поскольку используемая здесь modified UTF-8 несовместима со стандартной UTF-8.
- Определено в:
-
writeUTFв интерфейсеDataOutput - Определено в:
-
writeUTFв интерфейсеImageOutputStream - Параметры:
-
s—String, содержащий значение для записи. - Исключения:
-
UTFDataFormatException— если для представленияsв кодировке modified UTF-8 требуется более 65536 байтов. -
IOException— если произошла ошибка ввода-вывода.
writeShorts
public void writeShorts(short[] s, int off, int len) throws IOException
ImageOutputStreamlen равно 0, ничего не записывается. Сначала записывается значение short s[off], затем значение short s[off + 1] и так далее. Порядок байтов потока определяет порядок записи отдельных байтов. Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeShortsв интерфейсеImageOutputStream - Параметры:
-
s— массив значенийshortдля записи. -
off— начальное смещение в данных. -
len— количество значенийshortдля записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeChars
public void writeChars(char[] c, int off, int len) throws IOException
ImageOutputStreamlen равно 0, ничего не записывается. Сначала записывается символ char c[off], затем символ char c[off + 1] и так далее. Порядок байтов потока определяет порядок записи отдельных байтов. Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeCharsв интерфейсеImageOutputStream - Параметры:
-
c— массив символовcharдля записи. -
off— начальное смещение в данных. -
len— количество символовcharдля записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeInts
public void writeInts(int[] i, int off, int len) throws IOException
ImageOutputStreamlen равно 0, ничего не записывается. Сначала записывается значение int i[off], затем значение int i[off + 1] и так далее. Порядок байтов потока определяет порядок записи отдельных байтов. Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeIntsв интерфейсеImageOutputStream - Параметры:
-
i— массив значенийintдля записи. -
off— начальное смещение в данных. -
len— количество значенийintдля записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeLongs
public void writeLongs(long[] l, int off, int len) throws IOException
ImageOutputStreamlen равно 0, ничего не записывается. Сначала записывается значение long l[off], затем значение long l[off + 1] и так далее. Порядок байтов потока определяет порядок записи отдельных байтов. Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeLongsв интерфейсеImageOutputStream - Параметры:
-
l— массив значенийlongдля записи. -
off— начальное смещение в данных. -
len— количество значенийlongдля записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeFloats
public void writeFloats(float[] f, int off, int len) throws IOException
ImageOutputStreamlen равно 0, ничего не записывается. Сначала записывается значение float f[off], затем значение float f[off + 1] и так далее. Порядок байтов потока определяет порядок записи отдельных байтов. Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeFloatsв интерфейсеImageOutputStream - Параметры:
-
f— массив значенийfloatдля записи. -
off— начальное смещение в данных. -
len— количество значенийfloatдля записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeDoubles
public void writeDoubles(double[] d, int off, int len) throws IOException
ImageOutputStreamlen равно 0, ничего не записывается. Сначала записывается значение double d[off], затем значение double d[off + 1] и так далее. Порядок байтов потока определяет порядок записи отдельных байтов. Если смещение бита в потоке не равно нулю, оставшаяся часть текущего байта заполняется нулями и сначала записывается в поток. После записи смещение бита будет равно 0.
- Определено в:
-
writeDoublesв интерфейсеImageOutputStream - Параметры:
-
d— массив значенийdoublesдля записи. -
off— начальное смещение в данных. -
len— количество значенийdoubleдля записи. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeBit
public void writeBit(int bit) throws IOException
ImageOutputStreamЕсли к моменту сброса байта в место назначения некоторые его биты ни разу не были установлены, эти биты автоматически устанавливаются в 0.
- Определено в:
-
writeBitв интерфейсеImageOutputStream - Параметры:
-
bit—int, младший бит которого записывается в поток. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
writeBits
public void writeBits(long bits, int numBits) throws IOException
ImageOutputStreamnumBits младшими битами аргумента 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
write(int) и write(byte[], int, int).- Исключения:
-
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.