Spec-Zone.ru › OpenJDK 21

Класс ZipFile

java.lang.Object
java.util.zip.ZipFile
Все реализуемые интерфейсы:
Closeable, AutoCloseable
Непосредственные известные подклассы:
JarFile
public class ZipFile extends Object implements Closeable
Этот класс используется для чтения записей из файла ZIP.

Если не указано иное, передача null аргумента в конструктор или метод в этом классе приведет к исключению NullPointerException.

Примечание API:
Для освобождения ресурсов, используемых этим ZipFile, следует явно вызвать метод close() или с помощью конструкции try-with-resources. Подклассы отвечают за очистку ресурсов, полученных подклассом. Подклассы, переопределяющие Object.finalize() для выполнения очистки, должны быть изменены для использования альтернативных механизмов очистки, таких как Cleaner, и удалить переопределенный finalize метод.
С:
1.1

Краткое описание полей

Modifier and Type Field Description
static final int CENATT
Смещение поля атрибутов внутреннего файла заголовка центрального каталога (CEN).
static final int CENATX
Смещение поля внешних атрибутов файла заголовка центрального каталога (CEN).
static final int CENCOM
Смещение поля длины комментария заголовка центрального каталога (CEN).
static final int CENCRC
Смещение поля значения crc-32 нескомпрессированного файла заголовка центрального каталога (CEN).
static final int CENDSK
Смещение поля начального номера диска заголовка центрального каталога (CEN).
static final int CENEXT
Смещение поля длины дополнительного поля заголовка центрального каталога (CEN).
static final int CENFLG
Смещение поля флагов шифрования/расшифрования заголовка центрального каталога (CEN).
static final int CENHDR
Размер заголовка центрального каталога (CEN) в байтах (включая сигнатуру).
static final int CENHOW
Смещение поля метода сжатия заголовка центрального каталога (CEN).
static final int CENLEN
Смещение поля размера нескомпрессированного файла заголовка центрального каталога (CEN).
static final int CENNAM
Смещение поля длины имени файла заголовка центрального каталога (CEN).
static final int CENOFF
Смещение поля смещения заголовка LOC заголовка центрального каталога (CEN).
static final long CENSIG
Сигнатура заголовка центрального каталога (CEN).
static final int CENSIZ
Смещение поля размера сжатого файла заголовка центрального каталога (CEN).
static final int CENTIM
Смещение поля времени модификации заголовка центрального каталога (CEN).
static final int CENVEM
Смещение поля версии, создавшей файл, заголовка центрального каталога (CEN).
static final int CENVER
Смещение поля версии, необходимой для извлечения файла, заголовка центрального каталога (CEN).
static final int ENDCOM
Смещение поля длины комментария файла zip в заголовке конца центрального каталога (END).
static final int ENDHDR
Размер заголовка конца центрального каталога (END) в байтах (включая сигнатуру).
static final int ENDOFF
Смещение поля смещения первого заголовка CEN в заголовке конца центрального каталога (END).
static final long ENDSIG
Сигнатура заголовка конца центрального каталога (END).
static final int ENDSIZ
Смещение поля размера центрального каталога в байтах в заголовке конца центрального каталога (END).
static final int ENDSUB
Смещение поля количества записей на этом диске в заголовке конца центрального каталога (END).
static final int ENDTOT
Смещение поля общего количества записей в заголовке конца центрального каталога (END).
static final int EXTCRC
Смещение поля значения crc-32 нескомпрессированного файла дополнительного локального заголовка (EXT).
static final int EXTHDR
Размер дополнительного локального заголовка (EXT) в байтах (включая сигнатуру).
static final int EXTLEN
Смещение поля размера нескомпрессированного файла дополнительного локального заголовка (EXT).
static final long EXTSIG
Сигнатура дополнительного локального заголовка (EXT).
static final int EXTSIZ
Смещение поля размера сжатого файла дополнительного локального заголовка (EXT).
static final int LOCCRC
Смещение поля значения crc-32 нескомпрессированного файла локального заголовка (LOC).
static final int LOCEXT
Смещение поля длины дополнительного поля локального заголовка (LOC).
static final int LOCFLG
Смещение поля флага общего назначения локального заголовка (LOC).
static final int LOCHDR
Размер локального заголовка (LOC) в байтах (включая сигнатуру).
static final int LOCHOW
Смещение поля метода сжатия локального заголовка (LOC).
static final int LOCLEN
Смещение поля размера нескомпрессированного файла локального заголовка (LOC).
static final int LOCNAM
Смещение поля длины имени файла локального заголовка (LOC).
static final long LOCSIG
Сигнатура локального заголовка (LOC).
static final int LOCSIZ
Смещение поля размера сжатого файла локального заголовка (LOC).
static final int LOCTIM
Смещение поля времени модификации локального заголовка (LOC).
static final int LOCVER
Смещение поля версии, необходимой для извлечения файла, локального заголовка (LOC).
static final int OPEN_DELETE
Флаг режима открытия файла zip и маркировки его для удаления.
static final int OPEN_READ
Флаг режима открытия файла zip для чтения.

Краткое описание конструкторов

Конструктор Описание
ZipFile(File file)
Открывает файл ZIP для чтения, используя указанный объект File.
ZipFile(File file, int mode)
Открывает новый ZipFile для чтения из указанного объекта File в указанном режиме.
ZipFile(File file, int mode, Charset charset)
Открывает новый ZipFile для чтения из указанного объекта File в указанном режиме.
ZipFile(File file, Charset charset)
Открывает файл ZIP для чтения, используя указанный объект File.
ZipFile(String name)
Открывает архив zip для чтения.
ZipFile(String name, Charset charset)
Открывает архив zip для чтения.

Краткое описание методов

Modifier and Type Метод Описание
void close()
Закрывает файл ZIP.
Enumeration<? extends ZipEntry> entries()
Возвращает перечисление записей файла ZIP.
String getComment()
Возвращает комментарий к файлу zip, или null, если его нет.
ZipEntry getEntry(String name)
Возвращает запись zip-файла для указанного имени, или null, если не найдено.
InputStream getInputStream(ZipEntry entry)
Возвращает входной поток для чтения содержимого указанной записи zip-файла.
String getName()
Возвращает имя пути к файлу ZIP.
int size()
Возвращает количество записей в файле ZIP.
Stream<? extends ZipEntry> stream()
Возвращает упорядоченное Stream по записям файла ZIP.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

OPEN_READ

public static final int OPEN_READ
Флаг режима открытия файла zip для чтения.
См. также:
  • Значения константных полей

OPEN_DELETE

public static final int OPEN_DELETE
Флаг режима открытия файла zip и пометки его на удаление. Файл будет удалён в какой-то момент между его открытием и закрытием, но его содержимое останется доступным через объект ZipFile до тех пор, пока не будет вызван метод close или виртуальная машина не выйдет из работы.
См. также:
  • Значения константных полей

LOCSIG

static final long LOCSIG
Подпись заголовка локального файла (LOC).
См. также:
  • Значения константных полей

EXTSIG

static final long EXTSIG
Подпись заголовка дополнительного локального файла (EXT).
См. также:
  • Значения константных полей

CENSIG

static final long CENSIG
Подпись заголовка центрального каталога (CEN).
См. также:
  • Значения константных полей

ENDSIG

static final long ENDSIG
Подпись заголовка конца центрального каталога (END).
См. также:
  • Значения константных полей

LOCHDR

static final int LOCHDR
Размер заголовка локального файла (LOC) в байтах (включая подпись).
См. также:
  • Значения константных полей

EXTHDR

static final int EXTHDR
Размер заголовка дополнительного локального файла (EXT) в байтах (включая подпись).
См. также:
  • Значения константных полей

CENHDR

static final int CENHDR
Размер заголовка центрального каталога (CEN) в байтах (включая подпись).
См. также:
  • Значения константных полей

ENDHDR

static final int ENDHDR
Размер заголовка конца центрального каталога (END) в байтах (включая подпись).
См. также:
  • Значения константных полей

LOCVER

static final int LOCVER
Смещение поля версии заголовка локального файла (LOC), необходимой для извлечения.
См. также:
  • Значения константных полей

LOCFLG

static final int LOCFLG
Смещение поля флага общего назначения заголовка локального файла (LOC).
См. также:
  • Значения константных полей

LOCHOW

static final int LOCHOW
Смещение поля метода сжатия заголовка локального файла (LOC).
См. также:
  • Значения константных полей

LOCTIM

static final int LOCTIM
Смещение поля времени изменения заголовка локального файла (LOC).
См. также:
  • Значения константных полей

LOCCRC

static final int LOCCRC
Смещение поля значения crc-32 нескомпрессированного файла заголовка локального файла (LOC).
См. также:
  • Значения константных полей

LOCSIZ

static final int LOCSIZ
Смещение поля сжатого размера заголовка локального файла (LOC).
См. также:
  • Значения константных полей

LOCLEN

static final int LOCLEN
Смещение поля размера нескомпрессированного размера заголовка локального файла (LOC).
См. также:
  • Значения константных полей

LOCNAM

static final int LOCNAM
Смещение поля длины имени файла заголовка локального файла (LOC).
См. также:
  • Значения константных полей

LOCEXT

static final int LOCEXT
Смещение поля длины дополнительного поля заголовка локального файла (LOC).
См. также:
  • Значения константных полей

EXTCRC

static final int EXTCRC
Смещение поля значения crc-32 нескомпрессированного файла заголовка дополнительного локального файла (EXT).
См. также:
  • Значения константных полей

EXTSIZ

static final int EXTSIZ
Смещение поля сжатого размера заголовка дополнительного локального файла (EXT).
См. также:
  • Значения константных полей

EXTLEN

static final int EXTLEN
Смещение поля размера нескомпрессированного размера заголовка дополнительного локального файла (EXT).
См. также:
  • Значения константных полей

CENVEM

static final int CENVEM
Смещение поля версии, созданной заголовком центрального каталога (CEN).
См. также:
  • Значения константных полей

CENVER

static final int CENVER
Смещение поля версии, необходимой для извлечения, заголовка центрального каталога (CEN).
См. также:
  • Значения константных полей

CENFLG

static final int CENFLG
Смещение поля флага шифрования, расшифрования заголовка центрального каталога (CEN).
См. также:
  • Значения константных полей

CENHOW

static final int CENHOW
Смещение поля метода сжатия заголовка центрального каталога (CEN).
См. также:
  • Значения константных полей

CENTIM

static final int CENTIM
Смещение поля времени изменения заголовка центрального каталога (CEN).
См. также:
  • Значения константных полей

CENCRC

static final int CENCRC
Смещение поля значения crc-32 нескомпрессированного файла заголовка центрального каталога (CEN).
См. также:
  • Значения константных полей

Смещение поля размера сжатого заголовка центрального каталога (CEN)

static final int CENSIZ
Смещение поля размера сжатого заголовка центрального каталога (CEN).
См. также:
  • Значения константных полей

Смещение поля размера незаархивированного заголовка центрального каталога (CEN)

static final int CENLEN
Смещение поля размера незаархивированного заголовка центрального каталога (CEN).
См. также:
  • Значения константных полей

Смещение поля длины имени файла в заголовке центрального каталога (CEN)

static final int CENNAM
Смещение поля длины имени файла в заголовке центрального каталога (CEN).
См. также:
  • Значения константных полей

Смещение поля длины дополнительного поля в заголовке центрального каталога (CEN)

static final int CENEXT
Смещение поля длины дополнительного поля в заголовке центрального каталога (CEN).
См. также:
  • Значения константных полей

Смещение поля длины комментария в заголовке центрального каталога (CEN)

static final int CENCOM
Смещение поля длины комментария в заголовке центрального каталога (CEN).
См. также:
  • Значения константных полей

Смещение поля номера диска начала в заголовке центрального каталога (CEN)

static final int CENDSK
Смещение поля номера диска начала в заголовке центрального каталога (CEN).
См. также:
  • Значения константных полей

Смещение поля внутренних атрибутов файла в заголовке центрального каталога (CEN)

static final int CENATT
Смещение поля внутренних атрибутов файла в заголовке центрального каталога (CEN).
См. также:
  • Значения константных полей

Смещение поля внешних атрибутов файла в заголовке центрального каталога (CEN)

static final int CENATX
Смещение поля внешних атрибутов файла в заголовке центрального каталога (CEN).
См. также:
  • Значения константных полей

Смещение поля смещения заголовка LOC в заголовке центрального каталога (CEN)

static final int CENOFF
Смещение поля смещения заголовка LOC в заголовке центрального каталога (CEN).
См. также:
  • Значения константных полей

Смещение поля количества записей на этом диске в заголовке конца центрального каталога (END)

static final int ENDSUB
Смещение поля количества записей на этом диске в заголовке конца центрального каталога (END).
См. также:
  • Значения константных полей

Смещение поля общего количества записей в заголовке конца центрального каталога (END)

static final int ENDTOT
Смещение поля общего количества записей в заголовке конца центрального каталога (END).
См. также:
  • Значения константных полей

Смещение поля размера центрального каталога в байтах в заголовке конца центрального каталога (END)

static final int ENDSIZ
Смещение поля размера центрального каталога в байтах в заголовке конца центрального каталога (END).
См. также:
  • Значения константных полей

Смещение поля смещения первого заголовка CEN в заголовке конца центрального каталога (END)

static final int ENDOFF
Смещение поля смещения первого заголовка CEN в заголовке конца центрального каталога (END).
См. также:
  • Значения константных полей

Смещение поля длины комментария файла ZIP в заголовке конца центрального каталога (END)

static final int ENDCOM
Смещение поля длины комментария файла ZIP в заголовке конца центрального каталога (END).
См. также:
  • Значения константных полей

Подробное описание конструкторов

ZipFile

public ZipFile(String name) throws IOException
Открывает zip-файл для чтения.

Сначала, если существует менеджер безопасности, вызывается его метод checkRead с аргументом name для подтверждения разрешения на чтение.

Для декодирования имён записей и комментариев используется кодировка UTF-8 charset.

Параметры:
name - имя zip-файла
Исключения:
ZipException - если произошла ошибка формата ZIP
IOException - если произошла ошибка ввода-вывода
SecurityException - если менеджер безопасности существует и его метод checkRead не разрешает чтение файла.
См. также:
  • SecurityManager.checkRead(java.lang.String)

ZipFile

public ZipFile(File file, int mode) throws IOException
Открывает новый ZipFile для чтения из указанного объекта File в указанном режиме. Аргумент режима должен быть либо OPEN_READ, либо OPEN_READ | OPEN_DELETE.

Сначала, если существует менеджер безопасности, вызывается его метод checkRead с аргументом name для подтверждения разрешения на чтение.

Для декодирования имён записей и комментариев используется кодировка UTF-8 charset.

Параметры:
file - открываемый для чтения ZIP-файл
mode - режим открытия файла
Исключения:
ZipException - если произошла ошибка формата ZIP
IOException - если произошла ошибка ввода-вывода
SecurityException - если менеджер безопасности существует и его метод checkRead не разрешает чтение файла, или его метод checkDelete не разрешает удаление файла, когда установлен флаг OPEN_DELETE.
IllegalArgumentException - если аргумент mode некорректен
С:
1.3
См. также:
  • SecurityManager.checkRead(java.lang.String)

ZipFile

public ZipFile(File file) throws ZipException, IOException
Открывает ZIP-файл для чтения, используя указанный объект File.

Для декодирования имён записей и комментариев используется кодировка UTF-8 charset.

Параметры:
file - открываемый для чтения ZIP-файл
Исключения:
ZipException - если произошла ошибка формата ZIP
IOException - если произошла ошибка ввода-вывода

ZipFile

public ZipFile(File file, int mode, Charset charset) throws IOException
Открывает новый ZipFile для чтения из указанного объекта File в указанном режиме. Аргумент режима должен быть либо OPEN_READ, либо OPEN_READ | OPEN_DELETE.

Сначала, если существует менеджер безопасности, вызывается его метод checkRead с аргументом name для подтверждения разрешения на чтение.

Параметры:
file - открываемый для чтения ZIP-файл
mode - режим открытия файла
charset - кодировка для декодирования имён и комментариев записей ZIP, которые не закодированы с помощью кодировки UTF-8 (указано в флаге общего назначения записи).
Исключения:
ZipException - если произошла ошибка формата ZIP
IOException - если произошла ошибка ввода-вывода
SecurityException - если менеджер безопасности существует и его метод checkRead не разрешает чтение файла, или его метод checkDelete не разрешает удаление файла, когда установлен флаг OPEN_DELETE
IllegalArgumentException - если аргумент mode некорректен
С:
1.7
См. также:
  • SecurityManager.checkRead(java.lang.String)

ZipFile

public ZipFile(String name, Charset charset) throws IOException
Открывает zip-архив для чтения.

Сначала, если есть менеджер безопасности, вызывается его метод checkRead с аргументом name для проверки разрешения на чтение.

Parameters:
name - имя zip-архива
charset - кодировка, которая используется для декодирования имени и комментария к записи ZIP, если они не закодированы с помощью кодировки UTF-8 (указано в флэге общего назначения записи).
Throws:
ZipException - если произошла ошибка формата ZIP
IOException - если произошла ошибка ввода-вывода
SecurityException - если существует менеджер безопасности, и его метод checkRead не разрешает чтение файла
Since:
1.7
See Also:
  • SecurityManager.checkRead(java.lang.String)

ZipFile

public ZipFile(File file, Charset charset) throws IOException
Открывает ZIP-архив для чтения, используя объект File.
Parameters:
file - ZIP-архив для открытия на чтение
charset - кодировка для декодирования имени и комментария к записи ZIP (игнорируется, если бит кодировки языка записи в флэге общего назначения записи установлен).
Throws:
ZipException - если произошла ошибка формата ZIP
IOException - если произошла ошибка ввода-вывода
Since:
1.7

Подробное описание методов

getComment

public String getComment()
Возвращает комментарий к zip-архиву или null, если комментария нет.
Returns:
строка комментария к zip-архиву или null, если комментарий отсутствует
Throws:
IllegalStateException - если zip-архив закрыт
Since:
1.7

getEntry

public ZipEntry getEntry(String name)
Возвращает запись zip-архива по указанному имени или null, если запись не найдена.
Parameters:
name - имя записи
Returns:
запись zip-архива или null, если запись не найдена
Throws:
IllegalStateException - если zip-архив закрыт

getInputStream

public InputStream getInputStream(ZipEntry entry) throws IOException
Возвращает поток для чтения содержимого указанной записи zip-архива.

Закрытие этого ZIP-архива, в свою очередь, закроет все потоки, которые были возвращены вызовами этого метода.

API Note:
Возвращаемый InputStream метод может оборачивать InflaterInputStream, метод read(byte[], int, int) которого может изменять любой элемент буфера вывода.
Parameters:
entry - запись zip-архива
Returns:
поток для чтения содержимого указанной записи zip-архива или null, если запись zip-архива не существует в zip-архиве.
Throws:
ZipException - если произошла ошибка формата ZIP
IOException - если произошла ошибка ввода-вывода
IllegalStateException - если zip-архив закрыт

getName

public String getName()
Возвращает имя файла ZIP.
Returns:
имя файла ZIP

entries

public Enumeration<? extends ZipEntry> entries()
Возвращает перечисление записей zip-архива.
Returns:
перечисление записей zip-архива
Throws:
IllegalStateException - если zip-архив закрыт

stream

public Stream<? extends ZipEntry> stream()
Возвращает упорядоченный Stream по записям ZIP-архива. Записи отображаются в Stream в порядке их появления в центральном каталоге ZIP-архива.
Returns:
упорядоченный Stream записей в этом ZIP-архиве
Throws:
IllegalStateException - если zip-архив закрыт
Since:
1.8

size

public int size()
Возвращает количество записей в zip-архиве.
Returns:
количество записей в zip-архиве
Throws:
IllegalStateException - если zip-архив закрыт

close

public void close() throws IOException
Закрывает zip-архив.

Закрытие этого ZIP-архива закроет все потоки, ранее возвращенные вызовами метода getInputStream.

Specified by:
close в интерфейсе AutoCloseable
Specified by:
close в интерфейсе Closeable
Throws:
IOException - если произошла ошибка ввода-вывода

© 1993, 2023, 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/21/docs/api/java.base/java/util/zip/ZipFile.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API