Класс MemoryCacheImageInputStream
- java.lang.Object
-
- javax.imageio.stream.ImageInputStreamImpl
-
- javax.imageio.stream.MemoryCacheImageInputStream
- Все реализуемые интерфейсы:
- Closeable, DataInput, AutoCloseable, ImageInputStream
public class MemoryCacheImageInputStream extends ImageInputStreamImpl
Реализация ImageInputStream, получающая входные данные из обычного InputStream. Буфер памяти используется для кэширования по крайней мере данных между позицией отбрасывания и текущей позицией чтения.
В общем случае предпочтительно использовать FileCacheImageInputStream, когда читаете из обычного InputStream. Этот класс предоставлен для случаев, когда невозможно создать временный файл для записи.
Поля
Поля, унаследованные от класса javax.imageio.stream.ImageInputStreamImpl
bitOffset, byteOrder, flushedPos, streamPos
Конструкторы
| Конструктор и описание |
|---|
MemoryCacheImageInputStream(InputStream stream) Конструирует |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
void |
close() Закрывает этот |
protected void |
finalize() Завершает работу этого объекта перед сборкой мусора. |
void |
flushBefore(long pos) Отбрасывает начальную часть потока перед указанной позицией. |
boolean |
isCached() Возвращает |
boolean |
isCachedFile() Возвращает |
boolean |
isCachedMemory() Возвращает |
int |
read() Считывает один байт из потока и возвращает его как |
int |
read(byte[] b,
int off,
int len) Считывает до |
Методы, унаследованные от класса javax.imageio.stream.ImageInputStreamImpl
checkClosed, flush, 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, seek, setBitOffset, setByteOrder, skipBytes, skipBytes
Методы, унаследованные от класса java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Подробное описание конструкторов
MemoryCacheImageInputStream
public MemoryCacheImageInputStream(InputStream stream)
Конструирует MemoryCacheImageInputStream , который будет читать из заданного InputStream.
- Параметры:
-
stream- потокInputStreamдля чтения. - Исключения:
-
IllegalArgumentException- еслиstreamравенnull.
Подробное описание методов
read
public int read()
throws IOException
Описание скопировано из класса: ImageInputStreamImpl
Считывает один байт из потока и возвращает его как int между 0 и 255. Если достигнут конец файла (EOF), возвращается -1.
Подклассы должны предоставить реализацию для этого метода. Реализация подкласса должна обновить позицию потока перед завершением.
Сдвиг бита в потоке должен быть сброшен в ноль перед чтением.
- Определено в:
-
readв интерфейсеImageInputStream - Определено в:
-
readв классеImageInputStreamImpl - Возвращает:
- значение следующего байта в потоке или
-1, если достигнут конец файла (EOF). - Исключения:
-
IOException- если поток был закрыт.
read
public int read(byte[] b,
int off,
int len)
throws IOException
Описание скопировано из класса: ImageInputStreamImpl
Считывает до len байтов из потока и сохраняет их в b , начиная с индекса off. Если из-за достижения конца потока (EOF) байты не могут быть прочитаны, возвращается -1.
Сдвиг бита в потоке должен быть сброшен в ноль перед чтением.
Подклассы должны предоставить реализацию для этого метода. Реализация подкласса должна обновить позицию потока перед завершением.
- Определено в:
-
readв интерфейсеImageInputStream - Определено в:
-
readв классеImageInputStreamImpl - Параметры:
-
b- массив байтов для записи. -
off- начальная позиция вbдля записи. -
len- максимальное количество байтов для чтения. - Возвращает:
- количество фактически прочитанных байтов или
-1, чтобы указать конец потока (EOF). - Исключения:
-
IOException- если произошла ошибка ввода-вывода.
flushBefore
public void flushBefore(long pos)
throws IOException
Описание скопировано из интерфейса: ImageInputStream
Отбрасывает начальную часть потока перед указанной позицией. Попытка перейти к смещению в отброшенной части потока приведет к IndexOutOfBoundsException.
Вызов flushBefore может позволить классам, реализующим этот интерфейс, освободить ресурсы, такие как память или дисковое пространство, используемые для хранения данных из потока.
- Определено в:
-
flushBeforeв интерфейсеImageInputStream - Переопределяет:
-
flushBeforeв классеImageInputStreamImpl - Параметры:
-
pos-long, содержащий длину префикса потока, который может быть отброшен. - Исключения:
-
IOException- если произошла ошибка ввода-вывода.
isCached
public boolean isCached()
Возвращает true, так как этот ImageInputStream кэширует данные для возможности поиска назад.
- Определено в:
-
isCachedв интерфейсеImageInputStream - Переопределяет:
-
isCachedв классеImageInputStreamImpl - Возвращает:
-
true. - См. также:
-
isCachedMemory(),isCachedFile()
isCachedFile
public boolean isCachedFile()
Возвращает false, так как этот ImageInputStream не поддерживает кэширование файла.
- Определено в:
-
isCachedFileв интерфейсеImageInputStream - Переопределяет:
-
isCachedFileв классеImageInputStreamImpl - Возвращает:
-
false. - См. также:
-
isCached(),isCachedMemory()
isCachedMemory
public boolean isCachedMemory()
Возвращает true, так как этот ImageInputStream использует кэш в оперативной памяти.
- Определено в:
-
isCachedMemoryв интерфейсеImageInputStream - Переопределяет:
-
isCachedMemoryв классеImageInputStreamImpl - Возвращает:
-
true. - См. также:
-
isCached(),isCachedFile()
close
public void close()
throws IOException
Закрывает этот MemoryCacheImageInputStream, освобождая кэш. Источник InputStream не закрывается.
- Определено в:
-
closeв интерфейсеCloseable - Определено в:
-
closeв интерфейсеAutoCloseable - Определено в:
-
closeв интерфейсеImageInputStream - Переопределяет:
-
closeв классеImageInputStreamImpl - Исключения:
-
IOException- если произошла ошибка ввода-вывода.
finalize
protected void finalize()
throws Throwable
Завершает работу этого объекта перед сборкой мусора. Метод close вызывается для закрытия всех открытых источников ввода. Этот метод не должен вызываться кодом приложения.
- Переопределяет:
-
finalizeв классеImageInputStreamImpl - Исключения:
-
Throwable- если произошла ошибка при завершении работы суперкласса. - См. также:
-
WeakReference,PhantomReference
© 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.