Spec-Zone.ru › OpenJDK 27

Класс JarOutputStream

java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.util.zip.DeflaterOutputStream
java.util.zip.ZipOutputStream
java.util.jar.JarOutputStream
Все реализуемые интерфейсы:
Closeable, Flushable, AutoCloseable
public class JarOutputStream extends ZipOutputStream
Класс JarOutputStream используется для записи содержимого JAR-файла в любой выходной поток. Он расширяет класс java.util.zip.ZipOutputStream, добавляя поддержку записи необязательной записи Manifest. Класс Manifest можно использовать для указания метаинформации о JAR-файле и его записях.

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

Начиная с:
1.2
См. также:
  • Manifest
  • ZipOutputStream

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

Модификатор и тип Поле Описание
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).

Поля, объявленные в классе ZipOutputStream

DEFLATED, STORED
Модификатор и тип Поле Описание
static final int DEFLATED
Метод сжатия для сжатых записей (DEFLATED).
static final int STORED
Метод сжатия для несжатых записей (STORED).

Поля, объявленные в классе DeflaterOutputStream

buf, def
Модификатор и тип Поле Описание
protected byte[] buf
Выходной буфер для записи сжатых данных.
protected Deflater def
Компрессор для этого потока.

Поля, объявленные в классе FilterOutputStream

out
Модификатор и тип Поле Описание
protected OutputStream out
Базовый выходной поток, данные которого фильтруются.

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

Конструктор Описание
JarOutputStream(OutputStream out)
Создаёт новый JarOutputStream без манифеста.
JarOutputStream(OutputStream out, Manifest man)
Создаёт новый JarOutputStream с указанным Manifest.

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

Модификатор и тип Метод Описание
void putNextEntry(ZipEntry ze)
Начинает запись новой записи JAR-файла и устанавливает поток в начало данных этой записи.

Методы, объявленные в классе ZipOutputStream

close, closeEntry, finish, setComment, setLevel, setMethod, write
Модификатор и тип Метод Описание
void close()
Закрывает базовый поток и фильтруемый поток после полной записи содержимого выходного ZIP-потока.
void closeEntry()
Закрывает текущую запись ZIP и подготавливает поток к записи следующей записи.
void finish()
Завершает запись содержимого выходного ZIP-потока, не закрывая базовый поток.
void setComment(String comment)
Задаёт комментарий ZIP-файла.
void setLevel(int level)
Задаёт уровень сжатия для последующих записей, использующих метод DEFLATED.
void setMethod(int method)
Задаёт метод сжатия по умолчанию для последующих записей.
void write(byte[] b, int off, int len)
Записывает массив байтов в данные текущей записи ZIP.

Методы, объявленные в классе DeflaterOutputStream

deflate, flush, write
Модификатор и тип Метод Описание
protected void deflate()
Записывает следующий блок сжатых данных в выходной поток.
void flush()
Сбрасывает сжатый выходной поток.
void write(int b)
Записывает байт в сжатый выходной поток.

Методы, объявленные в классе FilterOutputStream

write
Модификатор и тип Метод Описание
void write(byte[] b)
Записывает b.length байт в этот выходной поток.

Методы, объявленные в классе OutputStream

nullOutputStream
Модификатор и тип Метод Описание
static OutputStream nullOutputStream()
Возвращает новый OutputStream, отбрасывающий все байты.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект некоторому другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация устарела и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Приостанавливает текущий поток до его пробуждения, обычно вследствие вызова notify или interrupt.
final void wait(long timeoutMillis)
Приостанавливает текущий поток до его пробуждения, обычно вследствие вызова notify или interrupt, либо до истечения указанного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Приостанавливает текущий поток до его пробуждения, обычно вследствие вызова notify или interrupt, либо до истечения указанного промежутка реального времени.

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

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).
См. также:
  • Значения констант полей

CENSIZ

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

CENLEN

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

CENNAM

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

CENEXT

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

CENCOM

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

CENDSK

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

CENATT

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

CENATX

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

CENOFF

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

ENDSUB

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

ENDTOT

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

ENDSIZ

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

ENDOFF

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

ENDCOM

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

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

JarOutputStream

public JarOutputStream(OutputStream out, Manifest man) throws IOException
Создает новый JarOutputStream с указанным Manifest. Манифест записывается в поток вывода как первая запись.
Параметры:
out — фактический поток вывода
man — необязательный Manifest
Исключения:
IOException — если произошла ошибка ввода-вывода

JarOutputStream

public JarOutputStream(OutputStream out) throws IOException
Создает новый JarOutputStream без манифеста.
Параметры:
out — фактический поток вывода
Исключения:
IOException — если произошла ошибка ввода-вывода

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

putNextEntry

public void putNextEntry(ZipEntry ze) throws IOException
Начинает запись новой записи JAR-файла и устанавливает позицию потока в начало данных записи. Этот метод также закроет любую предыдущую запись.

Если для записи не был указан метод сжатия, будет использоваться метод сжатия по умолчанию. При записи сжатой записи (DEFLATED), если размер сжатых данных не был задан явно с помощью метода ZipEntry.setCompressedSize(long), размер сжатых данных будет установлен равным фактическому размеру после сжатия.

Если для записи не задано время изменения, будет использоваться текущее время.

Переопределяет:
putNextEntry в классе ZipOutputStream
Параметры:
ze — запись ZIP/JAR, которую нужно записать
Исключения:
ZipException — если произошла ошибка ZIP
IOException — если произошла ошибка ввода-вывода

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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.

Spec-Zone.ru

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