Класс InflaterInputStream
- Все реализованные интерфейсы:
-
Closeable,AutoCloseable
- Прямые известные подклассы:
-
GZIPInputStream,ZipInputStream
public class InflaterInputStream extends FilterInputStream
Если не указано иное, передача null аргумента в конструктор или метод в этом классе приведёт к возникновению исключения NullPointerException.
- С момента:
- 1.1
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected byte[] |
buf |
Буфер ввода для распаковки. |
protected Inflater |
inf |
Распаковщик для этого потока. |
protected int |
len |
Общее количество считанных байтов в буфер ввода. |
Поля, объявленные в классе java.io.FilterInputStream
in
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
InflaterInputStream |
Создаёт новый поток ввода с дефолтным распаковщиком и размером буфера. |
InflaterInputStream |
Создаёт новый поток ввода с указанным распаковщиком и дефолтным размером буфера. |
InflaterInputStream |
Создаёт новый поток ввода с указанным распаковщиком и размером буфера. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
available() |
Возвращает 0 после достижения конца потока, иначе всегда возвращает 1. |
void |
close() |
Закрывает этот поток ввода и освобождает все системные ресурсы, связанные с потоком. |
protected void |
fill() |
Заполняет буфер ввода дополнительными данными для распаковки. |
void |
mark |
Помечает текущую позицию в этом потоке ввода. |
boolean |
markSupported() |
Проверяет, поддерживает ли этот поток ввода методы mark и reset. |
int |
read() |
Считывает байт распакованных данных. |
int |
read |
Считывает распакованные данные в массив байтов, возвращая количество распакованных байтов. |
void |
reset() |
Перемещает этот поток к позиции, которая была в момент последнего вызова метода mark на этом потоке ввода. |
long |
skip |
Пропускает указанное количество байтов распакованных данных. |
Методы, объявленные в классе java.io.FilterInputStream
read
Методы, объявленные в классе java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
Подробное описание полей
inf
protected Inflater inf
buf
protected byte[] buf
len
protected int len
Подробное описание конструкторов
InflaterInputStream
public InflaterInputStream(InputStream in, Inflater inf, int size)
- Параметры:
-
in- поток ввода -
inf- декомпрессор ("inflater") -
size- размер буфера ввода - Исключения:
-
IllegalArgumentException- еслиsize <= 0
InflaterInputStream
public InflaterInputStream(InputStream in, Inflater inf)
- Параметры:
-
in- поток ввода -
inf- декомпрессор ("inflater")
InflaterInputStream
public InflaterInputStream(InputStream in)
- Параметры:
-
in- поток ввода
Подробное описание методов
read
public int read() throws IOException
- Переопределяет:
-
readв классеFilterInputStream - Возвращает:
- прочитанный байт или -1, если достигнут конец сжатого ввода
- Исключения:
-
IOException- если произошла ошибка ввода-вывода - См. также:
read
public int read(byte[] b, int off, int len) throws IOException
len не равно нулю, метод будет блокироваться до тех пор, пока не будет доступен некоторый ввод для декомпрессии; в противном случае байты не считываются, и возвращается 0. Если этот метод возвращает ненулевое целое число n, то элементы buf[off] через buf[off+n-1] содержат нескомпрессированные данные. Содержимое элементов buf[off+n] через buf[off+len-1] не определено, в отличие от спецификации суперкласса InputStream, поэтому реализация свободна изменять эти элементы во время операции распаковки. Если этот метод возвращает -1 или вызывает исключение, то содержимое buf[off] через buf[off+len
-1] не определено.
- Переопределяет:
-
readв классеFilterInputStream - Параметры:
-
b- буфер, в который считываются данные -
off- начальный смещение в целевом массивеb -
len- максимальное количество считанных байтов - Возвращает:
- фактическое количество распакованных байтов или -1, если достигнут конец сжатого ввода или необходим предварительно заданный словарь
- Исключения:
-
IndexOutOfBoundsException- еслиoffотрицательно,lenотрицательно илиlenбольше, чемb.length - off -
ZipException- если произошла ошибка в формате ZIP -
IOException- если произошла ошибка ввода-вывода - См. также:
available
public int available() throws IOException
Программы не должны полагаться на этот метод для возвращения фактического количества байтов, которые можно прочитать без блокировки.
- Переопределяет:
-
availableв классеFilterInputStream - Возвращает:
- 1 перед EOF и 0 после EOF.
- Исключения:
-
IOException- если произошла ошибка ввода-вывода.
skip
public long skip(long n) throws IOException
- Переопределяет:
-
skipв классеFilterInputStream - Примечание реализации:
- Этот метод пропускает не более
Integer.MAX_VALUEбайтов. - Параметры:
-
n- количество байтов для пропуска. Еслиnравно нулю, байты не пропускаются. - Возвращает:
- фактическое количество пропущенных байтов, которое может быть равно нулю
- Исключения:
-
IOException- если произошла ошибка ввода-вывода или если этот поток уже закрыт -
IllegalArgumentException- еслиn < 0 - См. также:
close
public void close() throws IOException
- Указано в:
-
closeв интерфейсеAutoCloseable - Указано в:
-
closeв интерфейсеCloseable - Переопределяет:
-
closeв классеFilterInputStream - Исключения:
-
IOException- если произошла ошибка ввода-вывода - См. также:
fill
protected void fill() throws IOException
- Требования к реализации:
- Этот метод прочитает до
buf.length байтов в буфер ввода,buf, начиная с элемента0. Полеlenбудет установлено в количество прочитанных байтов. - Исключения:
-
IOException- если произошла ошибка ввода-вывода -
EOFException- если конец потока ввода был неожиданно достигнут
markSupported
public boolean markSupported()
mark и reset. Метод markSupported класса InflaterInputStream возвращает false.- Переопределяет:
-
markSupportedв классеFilterInputStream - Возвращает:
- значение, указывающее, поддерживает ли данный тип потока методы
markиreset. - См. также:
mark
public void mark(int readlimit)
- Переопределяет:
-
markв классеFilterInputStream - Требования к реализации:
- Метод
markклассаInflaterInputStreamничего не делает. - Параметры:
-
readlimit- максимальное ограничение байтов, которые можно прочитать, прежде чем позиция метки станет недоступной. - См. также:
reset
public void reset() throws IOException
mark для этого потока ввода.- Переопределяет:
-
resetв классеFilterInputStream - Требования к реализации:
- Метод
resetдля классаInflaterInputStreamничего не делает, кроме как выброситьIOException. - Исключения:
-
IOException- если этот метод вызывается. - См. также:
© 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/util/zip/InflaterInputStream.html