Класс MemoryCacheImageInputStream
- Все реализованные интерфейсы:
Closeable, DataInput, AutoCloseable, ImageInputStream
public class MemoryCacheImageInputStream extends ImageInputStreamImpl
ImageInputStream, получающая входные данные из обычного InputStream. Для кэширования как минимум данных между позицией отбрасывания и текущей позицией чтения используется буфер в памяти. В общем случае при чтении из обычного InputStream предпочтительно использовать FileCacheImageInputStream. Этот класс предназначен для случаев, когда невозможно создать временный файл для записи.
Краткое описание полей
Поля, объявленные в классе ImageInputStreamImpl
bitOffset, byteOrder, flushedPos, streamPos
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
MemoryCacheImageInputStream |
Создает MemoryCacheImageInputStream для чтения из указанного InputStream. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
close() |
Закрывает этот MemoryCacheImageInputStream и освобождает кэш. |
protected void |
finalize() |
Устарело и подлежит удалению: этот элемент API может быть удален в будущей версии. Метод завершения объявлен устаревшим и подлежащим удалению. |
boolean |
isCached() |
Возвращает true, поскольку этот ImageInputStream кэширует данные, чтобы разрешить перемещение назад. |
boolean |
isCachedFile() |
Возвращает false, поскольку этот ImageInputStream не использует файловый кэш. |
boolean |
isCachedMemory() |
Возвращает true, поскольку этот ImageInputStream использует кэш в оперативной памяти. |
int |
read() |
Читает из потока один байт и возвращает его как int в диапазоне от 0 до 255. |
int |
read |
Читает из потока не более len байтов и сохраняет их в b, начиная с индекса off. |
Методы, объявленные в классе ImageInputStreamImpl
checkClosed, 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, seek, setBitOffset, setByteOrder, skipBytes, skipBytes
Подробное описание конструкторов
MemoryCacheImageInputStream
public MemoryCacheImageInputStream(InputStream stream)
MemoryCacheImageInputStream для чтения из указанного InputStream.- Параметры:
-
stream—InputStreamдля чтения. - Исключения:
-
IllegalArgumentException— еслиstreamравенnull.
Подробное описание методов
read
public int read() throws IOException
ImageInputStreamImplint в диапазоне от 0 до 255. Если достигнут конец потока, возвращается -1. Подклассы должны предоставить реализацию этого метода. Реализация подкласса должна обновить позицию в потоке перед завершением работы.
Перед чтением битовое смещение в потоке должно быть сброшено в ноль.
- Определено в:
-
readв интерфейсеImageInputStream - Определено в:
-
readв классеImageInputStreamImpl - Возвращает:
- значение следующего байта в потоке или
-1, если достигнут конец потока. - Исключения:
-
IOException— если поток закрыт.
read
public int read(byte[] b, int off, int len) throws IOException
ImageInputStreamImpllen байтов и сохраняет их в b, начиная с индекса off. Если не удается прочитать ни одного байта, поскольку достигнут конец потока, возвращается -1. Перед чтением битовое смещение в потоке должно быть сброшено в ноль.
Подклассы должны предоставить реализацию этого метода. Реализация подкласса должна обновить позицию в потоке перед завершением работы.
- Определено в:
-
readв интерфейсеImageInputStream - Определено в:
-
readв классеImageInputStreamImpl - Параметры:
-
b— массив байтов для записи. -
off— начальная позиция вbдля записи. -
len— максимальное количество байтов для чтения. - Возвращает:
- фактическое количество прочитанных байтов или
-1, обозначающее конец потока. - Исключения:
-
IOException— если произошла ошибка ввода-вывода.
isCached
public boolean isCached()
true, поскольку этот ImageInputStream кэширует данные, чтобы разрешить перемещение назад.- Определено в:
-
isCachedв интерфейсеImageInputStream - Переопределяет:
-
isCachedв классеImageInputStreamImpl - Возвращает:
-
true. - См. также:
isCachedFile
public boolean isCachedFile()
false, поскольку этот ImageInputStream не использует файловый кэш.- Определено в:
-
isCachedFileв интерфейсеImageInputStream - Переопределяет:
-
isCachedFileв классеImageInputStreamImpl - Возвращает:
-
false. - См. также:
isCachedMemory
public boolean isCachedMemory()
true, поскольку этот ImageInputStream использует кэш в оперативной памяти.- Определено в:
-
isCachedMemoryв интерфейсеImageInputStream - Переопределяет:
-
isCachedMemoryв классеImageInputStreamImpl - Возвращает:
-
true. - См. также:
close
public void close() throws IOException
MemoryCacheImageInputStream и освобождает кэш. Исходный InputStream не закрывается.- Исключения:
-
IOException— если произошла ошибка ввода-вывода.
finalize
@Deprecated(since="9", forRemoval=true) protected void finalize() throws Throwable
Object.finalize().close вызывается для закрытия любого открытого источника ввода. Этот метод не следует вызывать из кода приложения.- Переопределяет:
-
finalizeв классеImageInputStreamImpl - Исключения:
-
Throwable— если во время завершения работы суперкласса произошла ошибка. - См. также:
© 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/javax/imageio/stream/MemoryCacheImageInputStream.html