Spec-Zone.ru › OpenJDK 8

Класс 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)

Отбрасывает начальную часть потока перед указанной позицией.

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, 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

Методы, унаследованные от класса 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 для гарантирования этого.

Унаследовано от:
write в интерфейсе DataOutput
Унаследовано от:
write в интерфейсе ImageOutputStream
Унаследовано от:
write в классе 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 для гарантирования этого.

Унаследовано от:
write в интерфейсе DataOutput
Унаследовано от:
write в интерфейсе ImageOutputStream
Унаследовано от:
write в классе 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 будет брошено только если выполняется чтение. Длина файла не будет увеличена до выполнения записи.

Унаследовано от:
seek в интерфейсе ImageInputStream
Переопределяет:
seek в классе ImageInputStreamImpl
Параметры:
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 не закрывается.

Унаследовано от:
close в интерфейсе Closeable
Унаследовано от:
close в интерфейсе AutoCloseable
Унаследовано от:
close в интерфейсе ImageInputStream
Переопределяет:
close в классе ImageInputStreamImpl
Исключения:
IOException - если произошла ошибка.

flushBefore

public void flushBefore(long pos)
                 throws IOException

Описание скопировано из интерфейса: ImageInputStream

Удаляет начальную часть потока перед указанной позицией. Попытка перейти к смещению внутри очищенной части потока приведёт к IndexOutOfBoundsException.

Вызов flushBefore может позволить классам, реализующим этот интерфейс, освободить ресурсы, такие как память или дисковое пространство, используемые для хранения данных из потока.

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

© 1993, 2020, 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.

Spec-Zone.ru

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