java.util.zip
Class ZipOutputStream
java.lang.Object
|
+--java.io.OutputStream
|
+--java.io.FilterOutputStream
|
+--java.util.zip.DeflaterOutputStream
|
+--java.util.zip.ZipOutputStream
- Direct Known Subclasses:
- JarOutputStream
- public class ZipOutputStream
- extends DeflaterOutputStream
- implements java.util.zip.ZipConstants
This class implements an output stream filter for writing files in the
ZIP file format. Includes support for both compressed and uncompressed
entries.
Field Summary |
static int |
DEFLATED
Compression method for compressed (DEFLATED) entries. |
static int |
STORED
Compression method for uncompressed (STORED) entries. |
Method Summary |
void |
close()
Closes the ZIP output stream as well as the stream being filtered. |
void |
closeEntry()
Closes the current ZIP entry and positions the stream for writing
the next entry. |
void |
finish()
Finishes writing the contents of the ZIP output stream without closing
the underlying stream. |
void |
putNextEntry(ZipEntry e)
Begins writing a new ZIP file entry and positions the stream to the
start of the entry data. |
void |
setComment(String comment)
Sets the ZIP file comment. |
void |
setLevel(int level)
Sets the compression level for subsequent entries which are DEFLATED. |
void |
setMethod(int method)
Sets the default compression method for subsequent entries. |
void |
write(byte[] b,
int off,
int len)
Writes an array of bytes to the current ZIP entry data. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
STORED
public static final int STORED
- Compression method for uncompressed (STORED) entries.
DEFLATED
public static final int DEFLATED
- Compression method for compressed (DEFLATED) entries.
ZipOutputStream
public ZipOutputStream(OutputStream out)
- Creates a new ZIP output stream.
- Parameters:
out
- the actual output stream
setComment
public void setComment(String comment)
- Sets the ZIP file comment.
- Parameters:
comment
- the comment string- Throws:
- IllegalArgumentException - if the length of the specified
ZIP file comment is greater than 0xFFFF bytes
setMethod
public void setMethod(int method)
- Sets the default compression method for subsequent entries. This
default will be used whenever the compression method is not specified
for an individual ZIP file entry, and is initially set to DEFLATED.
- Parameters:
method
- the default compression method- Throws:
- IllegalArgumentException - if the specified compression method
is invalid
setLevel
public void setLevel(int level)
- Sets the compression level for subsequent entries which are DEFLATED.
The default setting is DEFAULT_COMPRESSION.
- Parameters:
level
- the compression level (0-9)- Throws:
- IllegalArgumentException - if the compression level is invalid
putNextEntry
public void putNextEntry(ZipEntry e)
throws IOException
- Begins writing a new ZIP file entry and positions the stream to the
start of the entry data. Closes the current entry if still active.
The default compression method will be used if no compression method
was specified for the entry, and the current time will be used if
the entry has no set modification time.
- Parameters:
e
- the ZIP entry to be written- Throws:
- ZipException - if a ZIP format error has occurred
- IOException - if an I/O error has occurred
closeEntry
public void closeEntry()
throws IOException
- Closes the current ZIP entry and positions the stream for writing
the next entry.
- Throws:
- ZipException - if a ZIP format error has occurred
- IOException - if an I/O error has occurred
write
public void write(byte[] b,
int off,
int len)
throws IOException
- Writes an array of bytes to the current ZIP entry data. This method
will block until all the bytes are written.
- Parameters:
b
- the data to be writtenoff
- the start offset in the datalen
- the number of bytes that are written- Throws:
- ZipException - if a ZIP file error has occurred
- IOException - if an I/O error has occurred
- Overrides:
- write in class DeflaterOutputStream
finish
public void finish()
throws IOException
- Finishes writing the contents of the ZIP output stream without closing
the underlying stream. Use this method when applying multiple filters
in succession to the same output stream.
- Throws:
- ZipException - if a ZIP file error has occurred
- IOException - if an I/O exception has occurred
- Overrides:
- finish in class DeflaterOutputStream
close
public void close()
throws IOException
- Closes the ZIP output stream as well as the stream being filtered.
- Throws:
- ZipException - if a ZIP file error has occurred
- IOException - if an I/O error has occurred
- Overrides:
- close in class DeflaterOutputStream
Submit a bug or feature Version 1.2 of Java Platform API Specification
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.