Класс 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()

Всегда возвращает false, поскольку этот входной поток не поддерживает методы mark() и reset().

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

Spec-Zone .ru
спецификации, руководства, описания, API