Spec-Zone.ru › OpenJDK 21

Класс FileCacheImageOutputStream

java.lang.Object
javax.imageio.stream.ImageInputStreamImpl
javax.imageio.stream.ImageOutputStreamImpl
javax.imageio.stream.FileCacheImageOutputStream
Все реализованные интерфейсы:
Closeable, DataInput, DataOutput, AutoCloseable, ImageInputStream, ImageOutputStream
public class FileCacheImageOutputStream extends ImageOutputStreamImpl
Реализация класса ImageOutputStream, который записывает вывод в обычный OutputStream. Файл используется для кэширования данных до момента их сброса в выходной поток.

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

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

bitOffset, byteOrder, flushedPos, streamPos

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

Конструктор Описание
FileCacheImageOutputStream(OutputStream stream, File cacheDir)
Создает объект FileCacheImageOutputStream, который будет записывать данные в заданный outputStream.

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

Модификатор и тип Метод Описание
void close()
Закрывает этот FileCacheImageOutputStream.
void flushBefore(long pos)
Сбрасывает все данные до заданной позиции в подлежащее назначение, например, в OutputStream или File.
boolean isCached()
Возвращает true, так как этот ImageOutputStream кэширует данные, чтобы позволить обратный поиск.
boolean isCachedFile()
Возвращает true, так как этот ImageOutputStream поддерживает кэш файла.
boolean isCachedMemory()
Возвращает false, так как этот ImageOutputStream не поддерживает кэш в оперативной памяти.
long length()
Возвращает -1L, чтобы указать, что длина потока неизвестна.
int read()
Считывает один байт из потока и возвращает его как int между 0 и 255.
int read(byte[] b, int off, int len)
Считывает до len байтов из потока и сохраняет их в b начиная с индекса off.
void seek(long pos)
Устанавливает текущую позицию потока и сбрасывает битовый смещение на 0.
void write(byte[] b, int off, int len)
Записывает последовательность байтов в поток в текущей позиции.
void write(int b)
Записывает один байт в поток в текущей позиции.

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

flushBits, write, writeBit, writeBits, writeBoolean, writeByte, writeBytes, writeChar, writeChars, writeChars, writeDouble, writeDoubles, writeFloat, writeFloats, writeInt, writeInts, writeLong, writeLongs, writeShort, writeShorts, writeUTF

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

checkClosed, finalize, flush, flushBefore, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, 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

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

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

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

flush, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, 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

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

FileCacheImageOutputStream

public FileCacheImageOutputStream(OutputStream stream, File cacheDir) throws IOException
Создаёт FileCacheImageOutputStream, который будет записывать данные в указанный outputStream.

В качестве кеша используется временный файл. Если cacheDir не пуст и является каталогом, файл будет создан в нём. Если null, будет использоваться системный каталог временных файлов (см. документацию по File.createTempFile для подробностей).

Параметры:
stream - OutputStream для записи.
cacheDir - File, указывающий, где должен быть создан файл кеша, или null, чтобы использовать системный каталог.
Исключения:
IllegalArgumentException - если stream null.
IllegalArgumentException - если cacheDir не пуст, но не является каталогом.
IOException - если файл кеша не может быть создан.

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

read

public int read() throws IOException
Описание, скопированное из класса: ImageInputStreamImpl
Считывает один байт из потока и возвращает его как int между 0 и 255. Если достигнут конец потока (EOF), возвращается -1.

Подклассы должны предоставить реализацию для этого метода. Реализация подкласса должна обновить позицию потока перед завершением.

Битовый смещение в потоке должно быть сброшено до нуля перед чтением.

Определено в:
read в интерфейсе ImageInputStream
Определено в:
read в классе ImageInputStreamImpl
Возвращает:
значение следующего байта в потоке или -1, если достигнут конец потока.
Исключения:
IOException - если поток закрыт.

read

public int read(byte[] b, int off, int len) throws IOException
Описание, скопированное из класса: ImageInputStreamImpl
Считывает до len байт из потока и сохраняет их в b начиная с индекса off. Если байты не могут быть прочитаны из-за достижения конца потока, возвращается -1.

Битовый смещение в потоке должно быть сброшено до нуля перед чтением.

Подклассы должны предоставить реализацию для этого метода. Реализация подкласса должна обновить позицию потока перед завершением.

Определено в:
read в интерфейсе ImageInputStream
Определено в:
read в классе ImageInputStreamImpl
Параметры:
b - массив байт, которые будут записаны.
off - начальная позиция в b для записи.
len - максимальное количество байт для чтения.
Возвращает:
количество фактически прочитанных байт или -1, чтобы указать конец потока.
Исключения:
IOException - если произошла ошибка ввода-вывода.

write

public void write(int b) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Записывает один байт в поток в текущей позиции. 24 старших бита b игнорируются.

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

Параметры:
b - int, нижние 8 бит которого будут записаны.
Исключения:
IOException - если произошла ошибка ввода-вывода.

write

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

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

Параметры:
b - массив byte для записи.
off - смещение начала данных.
len - количество byte для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

length

public long length()
Описание, скопированное из класса: ImageInputStreamImpl
Возвращает -1L для указания, что размер потока неизвестен. Подклассы должны переопределять этот метод, чтобы предоставить информацию о фактическом размере.
Определено в:
length в интерфейсе ImageInputStream
Переопределяет:
length в классе ImageInputStreamImpl
Возвращает:
-1L для указания неизвестного размера.

seek

public void seek(long pos) throws IOException
Устанавливает текущую позицию потока и сбрасывает битовое смещение до 0. Разрешается перемещение за конец файла; исключение EOFException будет выброшено только при чтении. Размер файла не увеличится до выполнения записи.
Параметры:
pos - long с желаемой позицией указателя файла.
Исключения:
IndexOutOfBoundsException - если pos меньше, чем позиция сброса.
IOException - если произошла любая другая ошибка ввода-вывода.

isCached

public boolean isCached()
Возвращает true, так как этот ImageOutputStream кэширует данные, чтобы разрешить обратное перемещение.
Определено в:
isCached в интерфейсе ImageInputStream
Переопределяет:
isCached в классе ImageInputStreamImpl
Возвращает:
true.
См. также:
  • isCachedMemory()
  • isCachedFile()

isCachedFile

public boolean isCachedFile()
Возвращает true, так как этот ImageOutputStream поддерживает кэш файла.
Определено в:
isCachedFile в интерфейсе ImageInputStream
Переопределяет:
isCachedFile в классе ImageInputStreamImpl
Возвращает:
true.
См. также:
  • isCached()
  • isCachedMemory()

isCachedMemory

public boolean isCachedMemory()
Возвращает false, так как этот ImageOutputStream не поддерживает кэш в основной памяти.
Определено в:
isCachedMemory в интерфейсе ImageInputStream
Переопределяет:
isCachedMemory в классе ImageInputStreamImpl
Возвращает:
false.
См. также:
  • isCached()
  • isCachedFile()

close

public void close() throws IOException
Закрывает этот FileCacheImageOutputStream. Все ожидающие данные сбрасываются в выходной поток, файл кеша закрывается и удаляется. Поток назначения OutputStream не закрывается.
Исключения:
IOException - если произошла ошибка.

flushBefore

public void flushBefore(long pos) throws IOException
Описание, скопированное из интерфейса: ImageOutputStream
Очищает все данные до заданной позиции в подлежащем назначении, таком как OutputStream или File. Попытка перейти к очищенной части потока приведет к исключению IndexOutOfBoundsException.
Параметры:
pos - long, содержащий длину префикса потока, который может быть очищен в назначении.
Исключения:
IOException - если произошла ошибка ввода-вывода.

© 1993, 2023, 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/21/docs/api/java.desktop/javax/imageio/stream/FileCacheImageOutputStream.html

Spec-Zone.ru

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