Класс DeflaterInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.FilterInputStream
-
- java.util.zip.DeflaterInputStream
- Все реализованные интерфейсы:
-
Closeable,AutoCloseable
public class DeflaterInputStream extends FilterInputStream
Реализует фильтр входного потока для сжатия данных в формате сжатия «deflate».
- С момента:
- 1.6
- См. также:
-
DeflaterOutputStream,InflaterOutputStream,InflaterInputStream
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected byte[] |
buf |
Буфер ввода для чтения сжатых данных. |
protected Deflater |
def |
Сжиматель для данного потока. |
Поля, объявленные в классе java.io.FilterInputStream
in
Конструкторы
| Конструктор | Описание |
|---|---|
DeflaterInputStream(InputStream in) |
Создаёт новый входной поток с дефолтным сжимателем и размером буфера. |
DeflaterInputStream(InputStream in,
Deflater defl) |
Создаёт новый входной поток со заданным сжимателем и дефолтным размером буфера. |
DeflaterInputStream(InputStream in,
Deflater defl,
int bufLen) |
Создаёт новый входной поток со заданным сжимателем и размером буфера. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
available() |
Возвращает 0 после достижения конца потока, в противном случае всегда возвращает 1. |
void |
close() |
Закрывает этот входной поток и его базовый входной поток, удаляя любые ожидающие несжатые данные. |
void |
mark(int limit) |
Эта операция не поддерживается. |
boolean |
markSupported() |
Всегда возвращает |
int |
read() |
Читает один байт сжатых данных из входного потока. |
int |
read(byte[] b,
int off,
int len) |
Читает сжатые данные в массив байтов. |
void |
reset() |
Эта операция не поддерживается. |
long |
skip(long n) |
Пропускает и отбрасывает данные из входного потока. |
Методы, объявленные в классе java.io.FilterInputStream
read
Методы, объявленные в классе java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, transferTo
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Поля
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- если произошла ошибка ввода-вывода - См. также:
FilterInputStream.in
read
public int read()
throws IOException
Читает один байт сжатых данных из входного потока. Этот метод будет блокироваться, пока не будут прочитаны и сжаты некоторые данные.
- Переопределяет:
-
readв классеFilterInputStream - Возвращает:
- один байт сжатых данных или -1, если достигнут конец несжатого входного потока
- Исключения:
-
IOException- если произошла ошибка ввода-вывода или если этот поток уже закрыт - См. также:
FilterInputStream.in
read
public int read(byte[] b,
int off,
int len)
throws IOException
Читает сжатые данные в массив байтов. Этот метод будет блокироваться, пока не будут прочитаны и сжаты некоторые данные.
- Переопределяет:
-
readв классеFilterInputStream - Параметры:
-
b- буфер, в который считываются данные -
off- начальный смещение данных вb -
len- максимальное число сжатых байтов для чтения вb - Возвращает:
- фактическое количество считанных байтов или -1, если достигнут конец несжатого входного потока
- Исключения:
-
IndexOutOfBoundsException- еслиlen > b.length - off -
IOException- если произошла ошибка ввода-вывода или если этот входной поток уже закрыт - См. также:
FilterInputStream.in
skip
public long skip(long n)
throws IOException
Пропускает и отбрасывает данные из входного потока. Этот метод может блокироваться, пока не будет прочитано и пропущено указанное число байтов. Примечание: Хотя n задано как long, максимальное количество байтов, которое можно пропустить, равно Integer.MAX_VALUE.
- Переопределяет:
-
skipв классеFilterInputStream - Параметры:
-
n- количество байтов для пропуска - Возвращает:
- фактическое количество пропущенных байтов
- Исключения:
-
IOException- если произошла ошибка ввода-вывода или если этот поток уже закрыт
available
public int available()
throws IOException
Возвращает 0 после достижения конца потока, иначе всегда возвращает 1.
Программы не должны полагаться на этот метод для возвращения фактического числа байтов, которые могут быть прочитаны без блокировки.
- Переопределяет:
-
availableв классеFilterInputStream - Возвращает:
- ноль после достижения конца базового входного потока, иначе всегда возвращает 1
- Исключения:
-
IOException- если произошла ошибка ввода-вывода или если этот поток уже закрыт
markSupported
public boolean markSupported()
Всегда возвращает false, поскольку этот входной поток не поддерживает методы mark() и reset().
- Переопределяет:
-
markSupportedв классеFilterInputStream - Возвращает:
- false, всегда
- См. также:
-
FilterInputStream.in,InputStream.mark(int),InputStream.reset()
mark
public void mark(int limit)
Эта операция не поддерживается.
- Переопределяет:
-
markв классеFilterInputStream - Параметры:
-
limit- максимальное количество байтов, которые могут быть прочитаны перед тем, как маркер позиции станет недействительным - См. также:
-
FilterInputStream.in,FilterInputStream.reset()
reset
public void reset()
throws IOException
Эта операция не поддерживается.
- Переопределяет:
-
resetв классеFilterInputStream - Исключения:
-
IOException- всегда выбрасывается - См. также:
-
FilterInputStream.in,FilterInputStream.mark(int)
© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/zip/DeflaterInputStream.html