| java.lang.Object | ||||
| ↳ | java.io.OutputStream | |||
| ↳ | java.io.FilterOutputStream | |||
| ↳ | java.util.zip.DeflaterOutputStream | |||
| ↳ | java.util.zip.ZipOutputStream | |||
Known Direct Subclasses
|
Used to write (compress) data into zip files.
ZipOutputStream
is used to write
ZipEntry
s to the underlying
stream. Output from
ZipOutputStream
can be read using
ZipFile
or
ZipInputStream
.
While
DeflaterOutputStream
can write compressed zip file
entries, this extension can write uncompressed entries as well.
Use
setMethod(int)
or
setMethod(int)
with the
STORED
flag.
Using
ZipOutputStream
is a little more complicated than
GZIPOutputStream
because zip files are containers that can contain multiple files. This code creates a zip
file containing several files, similar to the
zip(1)
utility.
OutputStream os = ...
ZipOutputStream zos = new ZipOutputStream(new BufferedOutputStream(os));
try {
for (int i = 0; i < fileCount; ++i) {
String filename = ...
byte[] bytes = ...
ZipEntry entry = new ZipEntry(filename);
zos.putNextEntry(entry);
zos.write(bytes);
zos.closeEntry();
}
} finally {
zos.close();
}
| Constants | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| int | CENATT | ||||||||||
| int | CENATX | ||||||||||
| int | CENCOM | ||||||||||
| int | CENCRC | ||||||||||
| int | CENDSK | ||||||||||
| int | CENEXT | ||||||||||
| int | CENFLG | ||||||||||
| int | CENHDR | ||||||||||
| int | CENHOW | ||||||||||
| int | CENLEN | ||||||||||
| int | CENNAM | ||||||||||
| int | CENOFF | ||||||||||
| long | CENSIG | ||||||||||
| int | CENSIZ | ||||||||||
| int | CENTIM | ||||||||||
| int | CENVEM | ||||||||||
| int | CENVER | ||||||||||
| int | DEFLATED | Indicates deflated entries. | |||||||||
| int | ENDCOM | ||||||||||
| int | ENDHDR | ||||||||||
| int | ENDOFF | ||||||||||
| long | ENDSIG | ||||||||||
| int | ENDSIZ | ||||||||||
| int | ENDSUB | ||||||||||
| int | ENDTOT | ||||||||||
| int | EXTCRC | ||||||||||
| int | EXTHDR | ||||||||||
| int | EXTLEN | ||||||||||
| long | EXTSIG | ||||||||||
| int | EXTSIZ | ||||||||||
| int | LOCCRC | ||||||||||
| int | LOCEXT | ||||||||||
| int | LOCFLG | ||||||||||
| int | LOCHDR | ||||||||||
| int | LOCHOW | ||||||||||
| int | LOCLEN | ||||||||||
| int | LOCNAM | ||||||||||
| long | LOCSIG | ||||||||||
| int | LOCSIZ | ||||||||||
| int | LOCTIM | ||||||||||
| int | LOCVER | ||||||||||
| int | STORED | Indicates uncompressed entries. | |||||||||
|
[Expand]
Inherited Fields
|
|||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.util.zip.DeflaterOutputStream
|
|||||||||||
From class
java.io.FilterOutputStream
|
|||||||||||
| Public Constructors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Constructs a new
ZipOutputStream
that writes a zip file
to the given
OutputStream
.
|
||||||||||
| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Closes the current
ZipEntry
, if any, and the underlying output
stream.
|
||||||||||
|
|
Closes the current
ZipEntry
.
|
||||||||||
|
|
Indicates that all entries have been written to the stream.
|
||||||||||
|
|
Writes entry information to the underlying stream.
|
||||||||||
|
|
Sets the comment associated with the file being written.
|
||||||||||
|
|
Sets the
compression level
to be used
for writing entry data.
|
||||||||||
|
|
Sets the default compression method to be used when a
ZipEntry
doesn't
explicitly specify a method.
|
||||||||||
|
|
Writes data for the current entry to the underlying stream.
|
||||||||||
|
[Expand]
Inherited Methods
|
|||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.util.zip.DeflaterOutputStream
|
|||||||||||
From class
java.io.FilterOutputStream
|
|||||||||||
From class
java.io.OutputStream
|
|||||||||||
From class
java.lang.Object
|
|||||||||||
From interface
java.io.Closeable
|
|||||||||||
From interface
java.io.Flushable
|
|||||||||||
From interface
java.lang.AutoCloseable
|
|||||||||||
Indicates deflated entries.
Indicates uncompressed entries.
Constructs a new
ZipOutputStream
that writes a zip file
to the given
OutputStream
.
Closes the current
ZipEntry
, if any, and the underlying output
stream. If the stream is already closed this method does nothing.
| IOException | If an error occurs closing the stream. |
|---|
Closes the current
ZipEntry
. Any entry terminal data is written
to the underlying stream.
| IOException | If an error occurs closing the entry. |
|---|
Indicates that all entries have been written to the stream. Any terminal information is written to the underlying stream.
| IOException | if an error occurs while terminating the stream. |
|---|
Writes entry information to the underlying stream. Data associated with
the entry can then be written using
write()
. After data is
written
closeEntry()
must be called to complete the writing of
the entry to the underlying stream.
| ze |
the
ZipEntry
to store.
|
|---|
| IOException | If an error occurs storing the entry. |
|---|
Sets the comment associated with the file being written. See
getComment()
.
| IllegalArgumentException | if the comment is >= 64 Ki UTF-8 bytes. |
|---|
Sets the compression level to be used for writing entry data.
Sets the default compression method to be used when a
ZipEntry
doesn't
explicitly specify a method. See
setMethod(int)
for more details.
Writes data for the current entry to the underlying stream.
| buffer | the buffer to write. |
|---|---|
| offset |
the index of the first byte in
buffer
to write.
|
| byteCount |
the number of bytes in
buffer
to write.
|
| IOException | If an error occurs writing to the stream |
|---|