Spec-Zone.ru › OpenJDK 17

Класс 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 и является каталогом, файл будет создан в нём. Если null, будет использован системный каталог временных файлов по умолчанию (см. документацию по File.createTempFile для подробностей).

Параметры:
stream - OutputStream для записи.
cacheDir - File для указания, где должен быть создан файл кэша, или null для использования системного каталога.
Исключения:
IllegalArgumentException - если stream null.
IllegalArgumentException - если cacheDir не null , но не является каталогом.
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, 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/FileCacheImageOutputStream.html

Spec-Zone.ru

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