Класс DeflaterInputStream
- Все реализуемые интерфейсы:
Closeable, AutoCloseable
public class DeflaterInputStream extends FilterInputStream
Использование компрессора
DeflaterInputStream, созданный без указания компрессора, создаст компрессор при создании и закроет его, когда входной поток будет закрыт. Если при создании DeflaterInputStream указан компрессор, вызывающий отвечает за то, чтобы закрыть компрессор после закрытия входного потока.
- Примечание API:
- Для освобождения ресурсов, используемых этим потоком, необходимо вызвать метод
close()напрямую или с помощью оператораtry-with-resources. - Начиная с:
- 1.6
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected final byte[] |
buf |
Входной буфер для чтения сжатых данных. |
protected final Deflater |
def |
Компрессор для этого потока. |
Поля, объявленные в классе FilterInputStream
in | Модификатор и тип | Поле | Описание |
|---|---|---|
protected InputStream |
in |
Входной поток для фильтрации. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
DeflaterInputStream |
Создает новый входной поток и компрессор с уровнем сжатия по умолчанию и размером буфера по умолчанию. |
DeflaterInputStream |
Создает новый входной поток с указанным компрессором и размером буфера по умолчанию. |
DeflaterInputStream |
Создает новый входной поток с указанным компрессором и размером буфера. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
available() |
Возвращает 0 после достижения конца файла (EOF), в противном случае всегда возвращает 1. |
void |
close() |
Закрывает этот входной поток и нижележащий входной поток, отбрасывая все ожидающие несжатые данные. |
void |
mark |
Эта операция не поддерживается. |
boolean |
markSupported() |
|
int |
read() |
Считывает один байт сжатых данных из входного потока. |
int |
read |
Считывает сжатые данные в массив байтов. |
void |
reset() |
Эта операция не поддерживается. |
long |
skip |
Пропускает и отбрасывает данные из входного потока. |
Методы, объявленные в классе FilterInputStream
read | Модификатор и тип | Метод | Описание |
|---|---|---|
int |
read |
Считывает до b.length байт данных из этого входного потока в массив байтов. |
Методы, объявленные в классе InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo | Модификатор и тип | Метод | Описание |
|---|---|---|
static InputStream |
nullInputStream() |
Возвращает новый InputStream, который не считывает байты. |
byte[] |
readAllBytes() |
Считывает все оставшиеся байты из входного потока. |
int |
readNBytes |
Считывает запрошенное число байтов из входного потока в указанный массив байтов. |
byte[] |
readNBytes |
Считывает из входного потока до указанного числа байтов. |
void |
skipNBytes |
Пропускает и отбрасывает ровно n байт данных из этого входного потока. |
long |
transferTo |
Считывает все байты из этого входного потока и записывает их в указанный выходной поток в порядке считывания. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект какому-либо другому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удален в будущей версии. Финализация устарела и будет удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает значение хеш-кода этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного интервала реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного интервала реального времени. |
Подробное описание полей
def
protected final Deflater def
buf
protected final byte[] buf
Подробное описание конструкторов
DeflaterInputStream
public DeflaterInputStream(InputStream in)
Компрессор будет закрыт при закрытии этого входного потока.
- Параметры:
-
in— входной поток для чтения несжатых данных - Исключения:
-
NullPointerException— еслиinимеет значение null
DeflaterInputStream
public DeflaterInputStream(InputStream in, Deflater defl)
Закрытие этого входного потока не приведет к закрытию переданного компрессора.
- Параметры:
-
in— входной поток для чтения несжатых данных -
defl— компрессор («deflater») для этого потока - Исключения:
-
NullPointerException— еслиinилиdeflимеет значение null
DeflaterInputStream
public DeflaterInputStream(InputStream in, Deflater defl, int bufLen)
Закрытие этого входного потока не приведет к закрытию переданного компрессора.
- Параметры:
-
in— входной поток для чтения несжатых данных -
defl— компрессор («deflater») для этого потока -
bufLen— размер буфера сжатия - Исключения:
-
IllegalArgumentException— еслиbufLen <= 0 -
NullPointerException— еслиinилиdeflимеет значение null
Подробное описание методов
close
public void close() throws IOException
- Определено в:
-
closeв интерфейсеAutoCloseable - Определено в:
-
closeв интерфейсеCloseable - Переопределяет:
-
closeв классеFilterInputStream - Исключения:
-
IOException— при возникновении ошибки ввода-вывода - См. также:
read
public int read() throws IOException
- Переопределяет:
-
readв классеFilterInputStream - Возвращает:
- один байт сжатых данных или -1, если достигнут конец несжатого входного потока
- Исключения:
-
IOException— при возникновении ошибки ввода-вывода или если этот поток уже закрыт - См. также:
read
public int read(byte[] b, int off, int len) throws IOException
- Переопределяет:
-
readв классеFilterInputStream - Параметры:
-
b— буфер, в который считываются данные -
off— начальное смещение данных вb -
len— максимальное число сжатых байтов для считывания вb - Возвращает:
- фактическое число считанных байтов или -1, если достигнут конец несжатого входного потока
- Исключения:
-
NullPointerException— еслиbимеет значение null -
IndexOutOfBoundsException— еслиlen > b.length - off -
IOException— при возникновении ошибки ввода-вывода или если этот входной поток уже закрыт - См. также:
skip
public long skip(long n) throws IOException
- Переопределяет:
-
skipв классеFilterInputStream - Примечание по реализации:
- Этот метод пропускает не более
Integer.MAX_VALUEбайтов. - Параметры:
-
n— число байтов, которые нужно пропустить. Еслиnравно нулю, байты не пропускаются. - Возвращает:
- фактическое число пропущенных байтов, которое может быть равно нулю
- Исключения:
-
IOException— при возникновении ошибки ввода-вывода или если этот поток уже закрыт -
IllegalArgumentException— еслиn < 0 - См. также:
available
public int available() throws IOException
Программы не должны рассчитывать, что этот метод возвращает фактическое число байтов, которые можно считать без блокировки
- Переопределяет:
-
availableв классеFilterInputStream - Возвращает:
- ноль после достижения конца нижележащего входного потока, в противном случае всегда возвращает 1
- Исключения:
-
IOException— при возникновении ошибки ввода-вывода или если этот поток уже закрыт
markSupported
public boolean markSupported()
- Переопределяет:
-
markSupportedв классеFilterInputStream - Возвращает:
- false, всегда
- См. также:
mark
public void mark(int limit)
- Переопределяет:
-
markв классеFilterInputStream - Параметры:
-
limit— максимальное число байтов, которые можно считать до сброса маркера позиции - См. также:
reset
public void reset() throws IOException
- Переопределяет:
-
resetв классеFilterInputStream - Исключения:
-
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.