Класс ZipInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.FilterInputStream
-
- java.util.zip.InflaterInputStream
-
- java.util.zip.ZipInputStream
- Все реализованные интерфейсы:
-
Closeable,AutoCloseable
- Прямые известные подклассы:
JarInputStream
public class ZipInputStream extends InflaterInputStream
Этот класс реализует фильтр входного потока для чтения файлов в формате ZIP. Включает поддержку как сжатых, так и несжатых записей.
- С тех пор:
- 1.1
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
static int | CENATT | |
static int | CENATX | |
static int | CENCOM | |
static int | CENCRC | |
static int | CENDSK | |
static int | CENEXT | |
static int | CENFLG | |
static int | CENHDR | |
static int | CENHOW | |
static int | CENLEN | |
static int | CENNAM | |
static int | CENOFF | |
static long | CENSIG | |
static int | CENSIZ | |
static int | CENTIM | |
static int | CENVEM | |
static int | CENVER | |
static int | ENDCOM | |
static int | ENDHDR | |
static int | ENDOFF | |
static long | ENDSIG | |
static int | ENDSIZ | |
static int | ENDSUB | |
static int | ENDTOT | |
static int | EXTCRC | |
static int | EXTHDR | |
static int | EXTLEN | |
static long | EXTSIG | |
static int | EXTSIZ | |
static int | LOCCRC | |
static int | LOCEXT | |
static int | LOCFLG | |
static int | LOCHDR | |
static int | LOCHOW | |
static int | LOCLEN | |
static int | LOCNAM | |
static long | LOCSIG | |
static int | LOCSIZ | |
static int | LOCTIM | |
static int | LOCVER |
Поля, объявленные в классе java.util.zip.InflaterInputStream
buf, inf, len Поля, объявленные в классе java.io.FilterInputStream
in Конструкторы
| Конструктор | Описание |
|---|---|
ZipInputStream(InputStream in) | Создаёт новый поток ввода ZIP. |
ZipInputStream(InputStream in,
Charset charset) | Создаёт новый поток ввода ZIP. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
int | available() | Возвращает 0 после достижения конца файла для текущих данных записи, в противном случае всегда возвращает 1. |
void | close() | Закрывает этот поток ввода и освобождает любые системные ресурсы, связанные с потоком. |
void | closeEntry() | Закрывает текущую запись ZIP и позиционирует поток для чтения следующей записи. |
protected ZipEntry | createZipEntry(String name) | Создаёт новый объект |
ZipEntry | getNextEntry() | Читает следующую запись файла ZIP и позиционирует поток в начале данных записи. |
int | read(byte[] b,
int off,
int len) | Читает из текущей записи ZIP в массив байтов. |
long | skip(long n) | Пропускает указанное количество байтов в текущей записи ZIP. |
Методы, объявленные в классе java.util.zip.InflaterInputStream
fill, mark, markSupported, read, reset Методы, объявленные в классе 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 Поля
LOCSIG
public static final long LOCSIG
- См. также:
- Значения константных полей
EXTSIG
public static final long EXTSIG
- См. также:
- Значения константных полей
CENSIG
public static final long CENSIG
- См. также:
- Значения константных полей
ENDSIG
public static final long ENDSIG
- См. также:
- Значения константных полей
LOCHDR
public static final int LOCHDR
- См. также:
- Значения константных полей
EXTHDR
public static final int EXTHDR
- См. также:
- Значения константных полей
CENHDR
public static final int CENHDR
- См. также:
- Значения константных полей
ENDHDR
public static final int ENDHDR
- См. также:
- Значения константных полей
LOCVER
public static final int LOCVER
- См. также:
- Значения константных полей
LOCFLG
public static final int LOCFLG
- См. также:
- Значения константных полей
LOCHOW
public static final int LOCHOW
- См. также:
- Значения константных полей
LOCTIM
public static final int LOCTIM
- См. также:
- Значения константных полей
LOCCRC
public static final int LOCCRC
- См. также:
- Значения константных полей
LOCSIZ
public static final int LOCSIZ
- См. также:
- Значения константных полей
LOCLEN
public static final int LOCLEN
- См. также:
- Значения константных полей
LOCNAM
public static final int LOCNAM
- См. также:
- Значения константных полей
LOCEXT
public static final int LOCEXT
- См. также:
- Значения константных полей
EXTCRC
public static final int EXTCRC
- См. также:
- Значения константных полей
EXTSIZ
public static final int EXTSIZ
- См. также:
- Значения константных полей
EXTLEN
public static final int EXTLEN
- См. также:
- Значения константных полей
CENVEM
public static final int CENVEM
- См. также:
- Значения константных полей
CENVER
public static final int CENVER
- См. также:
- Значения константных полей
CENFLG
public static final int CENFLG
- См. также:
- Значения константных полей
CENHOW
public static final int CENHOW
- См. также:
- Значения константных полей
CENTIM
public static final int CENTIM
- См. также:
- Значения константных полей
CENCRC
public static final int CENCRC
- См. также:
- Значения константных полей
CENSIZ
public static final int CENSIZ
- См. также:
- Значения константных полей
CENLEN
public static final int CENLEN
- См. также:
- Значения константных полей
CENNAM
public static final int CENNAM
- См. также:
- Значения константных полей
CENEXT
public static final int CENEXT
- См. также:
- Значения константных полей
CENCOM
public static final int CENCOM
- См. также:
- Значения константных полей
CENDSK
public static final int CENDSK
- См. также:
- Значения константных полей
CENATT
public static final int CENATT
- См. также:
- Значения константных полей
CENATX
public static final int CENATX
- См. также:
- Значения константных полей
CENOFF
public static final int CENOFF
- См. также:
- Значения константных полей
ENDSUB
public static final int ENDSUB
- См. также:
- Значения константных полей
ENDTOT
public static final int ENDTOT
- См. также:
- Значения константных полей
ENDSIZ
public static final int ENDSIZ
- См. также:
- Значения константных полей
ENDOFF
public static final int ENDOFF
- См. также:
- Значения константных полей
ENDCOM
public static final int ENDCOM
- См. также:
- Значения константных полей
Конструкторы
ZipInputStream
public ZipInputStream(InputStream in)
Создаёт новый поток ввода ZIP.
Используется кодировка UTF-8 для декодирования имён записей.
- Параметры:
-
in- фактический поток ввода
ZipInputStream
public ZipInputStream(InputStream in,
Charset charset) Создаёт новый поток ввода ZIP.
- Параметры:
-
in- фактический поток ввода -
charset- Используемая кодировка для декодирования имени записи ZIP (игнорируется, если бит кодировки языка записи ZIP установлен). - С момента:
- 1.7
Методы
getNextEntry
public ZipEntry getNextEntry()
throws IOException Читает следующую запись файла ZIP и позиционирует поток в начале данных записи.
- Возвращает:
- следующую запись файла ZIP или null, если больше записей нет
- Имеет исключения:
-
ZipException- если произошла ошибка в файле ZIP -
IOException- если произошла ошибка ввода-вывода
closeEntry
public void closeEntry()
throws IOException Закрывает текущую запись ZIP и позиционирует поток для чтения следующей записи.
- Имеет исключения:
-
ZipException- если произошла ошибка в файле ZIP -
IOException- если произошла ошибка ввода-вывода
available
public int available()
throws IOException Возвращает 0 после достижения конца файла для текущих данных записи, в противном случае всегда возвращает 1.
Программы не должны полагаться на этот метод для возвращения фактического количества байтов, которые можно прочитать без блокировки.
- Переопределяет:
-
availableв классеInflaterInputStream - Возвращает:
- 1 перед концом файла и 0 после достижения конца файла для текущей записи.
- Имеет исключения:
-
IOException- если произошла ошибка ввода-вывода.
read
public int read(byte[] b,
int off,
int len)
throws IOException Читает данные из текущей записи ZIP в массив байтов. Если len не равно нулю, метод блокируется до тех пор, пока доступны некоторые данные; в противном случае байты не читаются и возвращается 0.
- Переопределяет:
-
readв классеInflaterInputStream - Параметры:
-
b- буфер, в который читаются данные -
off- начальный смещение в целевом массивеb -
len- максимальное количество считанных байтов - Возвращает:
- фактическое количество считанных байтов или -1, если достигнут конец записи
- Имеет исключения:
-
NullPointerException- еслиbравноnull. -
IndexOutOfBoundsException- еслиoffотрицательно,lenотрицательно илиlenбольше, чемb.length - off -
ZipException- если произошла ошибка в файле ZIP -
IOException- если произошла ошибка ввода-вывода - См. также:
FilterInputStream.in
skip
public long skip(long n)
throws IOException Пропускает указанное количество байтов в текущей записи ZIP.
- Переопределяет:
-
skipв классеInflaterInputStream - Параметры:
-
n- количество байтов для пропуска - Возвращает:
- фактическое количество пропущенных байтов
- Имеет исключения:
-
ZipException- если произошла ошибка в файле ZIP -
IOException- если произошла ошибка ввода-вывода -
IllegalArgumentException- еслиn < 0
close
public void close()
throws IOException Закрывает этот поток ввода и освобождает все системные ресурсы, связанные с потоком.
- Определено в:
-
closeв интерфейсеAutoCloseable - Определено в:
-
closeв интерфейсеCloseable - Переопределяет:
-
closeв классеInflaterInputStream - Имеет исключения:
-
IOException- если произошла ошибка ввода-вывода - См. также:
FilterInputStream.in
createZipEntry
protected ZipEntry createZipEntry(String name)
Создаёт новый объект ZipEntry для указанного имени записи.
- Параметры:
-
name- имя записи файла ZIP - Возвращает:
- созданную запись ZipEntry
© 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/ZipInputStream.html