Класс 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. Включает поддержку как сжатых, так и несжатых записей.
Поля
| Модификатор и тип | Поле и описание |
|---|---|
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.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.
- Overrides:
-
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-архива.
- Overrides:
-
skipв классеInflaterInputStream - Параметры:
-
n- количество байтов для пропуска - Возвращает:
- фактическое количество пропущенных байтов
- Исключения:
-
ZipException- если произошла ошибка в файле ZIP -
IOException- если произошла ошибка ввода-вывода -
IllegalArgumentException- еслиn < 0
close
public void close()
throws IOException Закрывает этот поток ввода и высвобождает любые системные ресурсы, связанные с потоком.
- Определено в:
-
closeв интерфейсеCloseable - Определено в:
-
closeв интерфейсеAutoCloseable - Overrides:
-
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.