Класс ZipOutputStream
- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FilterOutputStream
-
- java.util.zip.DeflaterOutputStream
-
- java.util.zip.ZipOutputStream
- Все реализованные интерфейсы:
-
Closeable,Flushable,AutoCloseable
- Прямые известные подклассы:
JarOutputStream
public class ZipOutputStream extends DeflaterOutputStream
Этот класс реализует фильтр потока вывода для записи файлов в формате 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 | DEFLATED | Метод сжатия для сжатых (DEFLATED) записей. |
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 | |
static int | STORED | Метод сжатия для несжатых (STORED) записей. |
Поля, объявленные в классе java.util.zip.DeflaterOutputStream
buf, def Поля, объявленные в классе java.io.FilterOutputStream
out Конструкторы
| Конструктор | Описание |
|---|---|
ZipOutputStream(OutputStream out) | Создает новый поток вывода ZIP. |
ZipOutputStream(OutputStream out,
Charset charset) | Создает новый поток вывода ZIP. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | close() | Закрывает поток вывода ZIP, а также фильтруемый поток. |
void | closeEntry() | Закрывает текущую запись ZIP и устанавливает поток для записи следующей записи. |
void | finish() | Завершает запись содержимого потока вывода ZIP без закрытия базового потока. |
void | putNextEntry(ZipEntry e) | Начинает запись новой записи ZIP файла и устанавливает поток в начало данных записи. |
void | setComment(String comment) | Устанавливает комментарий к файлу ZIP. |
void | setLevel(int level) | Устанавливает уровень сжатия для последующих записей, которые сжаты DEFLATED. |
void | setMethod(int method) | Устанавливает метод сжатия по умолчанию для последующих записей. |
void | write(byte[] b,
int off,
int len) | Записывает массив байтов в текущие данные записи ZIP. |
Методы, объявленные в классе java.util.zip.DeflaterOutputStream
deflate, flush, write Методы, объявленные в классе java.io.FilterOutputStream
write Методы, объявленные в классе java.io.OutputStream
nullOutputStream Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Поля
STORED
public static final int STORED
Метод сжатия для несжатых (STORED) записей.
- См. также:
- Значения константных полей
DEFLATED
public static final int DEFLATED
Метод сжатия для сжатых (DEFLATED) записей.
- См. также:
- Значения константных полей
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
- См. также:
- Значения константных полей
Конструкторы
ZipOutputStream
public ZipOutputStream(OutputStream out)
Создаёт новый поток вывода ZIP.
Используется кодировка UTF-8 charset для кодирования имён и комментариев записей.
- Параметры:
-
out- фактический поток вывода
ZipOutputStream
public ZipOutputStream(OutputStream out,
Charset charset) Создаёт новый поток вывода ZIP.
- Параметры:
-
out- фактический поток вывода -
charset- кодировка, которая должна использоваться для кодирования имён и комментариев записей - С момента:
- 1.7
Методы
setComment
public void setComment(String comment)
Устанавливает комментарий к файлу ZIP.
- Параметры:
-
comment- строка комментария - Исключение:
-
IllegalArgumentException- если длина указанного комментария к файлу ZIP больше 0xFFFF байтов
setMethod
public void setMethod(int method)
Устанавливает метод сжатия по умолчанию для последующих записей. Данный метод будет использоваться, когда метод сжатия не указан для отдельной записи файла ZIP и изначально установлен в DEFLATED.
- Параметры:
-
method- метод сжатия по умолчанию - Исключение:
-
IllegalArgumentException- если указанный метод сжатия некорректен
setLevel
public void setLevel(int level)
Устанавливает уровень сжатия для последующих записей, которые сжаты с использованием DEFLATED. Значение по умолчанию DEFAULT_COMPRESSION.
- Параметры:
-
level- уровень сжатия (0-9) - Исключение:
-
IllegalArgumentException- если уровень сжатия некорректен
putNextEntry
public void putNextEntry(ZipEntry e)
throws IOException Начинает запись новой записи файла ZIP и устанавливает поток в начало данных записи. Закрывает текущую запись, если она активна. Используется метод сжатия по умолчанию, если метод сжатия не указан для записи, а текущее время используется, если для записи не установлено время изменения.
- Параметры:
-
e- запись файла ZIP для записи - Исключение:
-
ZipException- если произошла ошибка формата ZIP -
IOException- если произошла ошибка ввода/вывода
closeEntry
public void closeEntry()
throws IOException Закрывает текущую запись ZIP и устанавливает поток для записи следующей записи.
- Исключение:
-
ZipException- если произошла ошибка формата ZIP -
IOException- если произошла ошибка ввода/вывода
write
public void write(byte[] b,
int off,
int len)
throws IOException Записывает массив байтов в текущие данные записи файла ZIP. Этот метод будет блокироваться до тех пор, пока все байты не будут записаны.
- Переопределяет:
-
writeв классеDeflaterOutputStream - Параметры:
-
b- данные для записи -
off- начальный смещение в данных -
len- количество записываемых байтов - Исключение:
-
ZipException- если произошла ошибка в файле ZIP -
IOException- если произошла ошибка ввода/вывода - См. также:
FilterOutputStream.write(int)
finish
public void finish()
throws IOException Завершает запись содержимого потока вывода ZIP без закрытия базового потока. Используйте этот метод, когда применяете несколько фильтров последовательно к одному и тому же потоку вывода.
- Переопределяет:
-
finishв классеDeflaterOutputStream - Исключение:
-
ZipException- если произошла ошибка в файле ZIP -
IOException- если произошла ошибка ввода/вывода
close
public void close()
throws IOException Закрывает поток вывода ZIP, а также отфильтрованный поток.
- Определяет:
-
closeв интерфейсеAutoCloseable - Определяет:
-
closeв интерфейсеCloseable - Переопределяет:
-
closeв классеDeflaterOutputStream - Исключение:
-
ZipException- если произошла ошибка в файле ZIP -
IOException- если произошла ошибка ввода/вывода - См. также:
-
FilterOutputStream.flush(),FilterOutputStream.out
© 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/ZipOutputStream.html