|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.io.OutputStream java.io.FilterOutputStream java.util.zip.DeflaterOutputStream java.util.zip.ZipOutputStream
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 |
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
|
private boolean |
closed
|
private String |
comment
|
private CRC32 |
crc
|
static int |
DEFLATED
Compression method for compressed (DEFLATED) entries. |
static int |
ENDCOM
|
static int |
ENDHDR
|
static int |
ENDOFF
|
static long |
ENDSIG
|
static int |
ENDSIZ
|
static int |
ENDSUB
|
static int |
ENDTOT
|
private Vector |
entries
|
private ZipEntry |
entry
|
static int |
EXTCRC
|
static int |
EXTHDR
|
static int |
EXTLEN
|
static long |
EXTSIG
|
static int |
EXTSIZ
|
private boolean |
finished
|
static int |
LOCCRC
|
static int |
LOCEXT
|
static int |
LOCFLG
|
static int |
LOCHDR
|
static int |
LOCHOW
|
static int |
LOCLEN
|
static int |
LOCNAM
|
private long |
locoff
|
static long |
LOCSIG
|
static int |
LOCSIZ
|
static int |
LOCTIM
|
static int |
LOCVER
|
private int |
method
|
private Hashtable |
names
|
static int |
STORED
Compression method for uncompressed (STORED) entries. |
private long |
written
|
Fields inherited from class java.util.zip.DeflaterOutputStream |
buf, def, usesDefaultDeflater |
Fields inherited from class java.io.FilterOutputStream |
out |
Constructor Summary | |
ZipOutputStream(OutputStream out)
Creates a new ZIP output stream. |
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. |
private void |
ensureOpen()
Check to make sure that this stream has not been closed |
void |
finish()
Finishes writing the contents of the ZIP output stream without closing the underlying stream. |
private static byte[] |
getUTF8Bytes(String s)
|
(package private) static int |
getUTF8Length(String s)
|
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. |
private void |
writeBytes(byte[] b,
int off,
int len)
|
private void |
writeCEN(ZipEntry e)
|
private void |
writeEND(long off,
long len)
|
private void |
writeEXT(ZipEntry e)
|
private void |
writeInt(long v)
|
private void |
writeLOC(ZipEntry e)
|
private void |
writeShort(int v)
|
Methods inherited from class java.util.zip.DeflaterOutputStream |
deflate, write |
Methods inherited from class java.io.FilterOutputStream |
flush, write |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private ZipEntry entry
private Vector entries
private Hashtable names
private CRC32 crc
private long written
private long locoff
private String comment
private int method
private boolean finished
private boolean closed
public static final int STORED
public static final int DEFLATED
public static final long LOCSIG
public static final long EXTSIG
public static final long CENSIG
public static final long ENDSIG
public static final int LOCHDR
public static final int EXTHDR
public static final int CENHDR
public static final int ENDHDR
public static final int LOCVER
public static final int LOCFLG
public static final int LOCHOW
public static final int LOCTIM
public static final int LOCCRC
public static final int LOCSIZ
public static final int LOCLEN
public static final int LOCNAM
public static final int LOCEXT
public static final int EXTCRC
public static final int EXTSIZ
public static final int EXTLEN
public static final int CENVEM
public static final int CENVER
public static final int CENFLG
public static final int CENHOW
public static final int CENTIM
public static final int CENCRC
public static final int CENSIZ
public static final int CENLEN
public static final int CENNAM
public static final int CENEXT
public static final int CENCOM
public static final int CENDSK
public static final int CENATT
public static final int CENATX
public static final int CENOFF
public static final int ENDSUB
public static final int ENDTOT
public static final int ENDSIZ
public static final int ENDOFF
public static final int ENDCOM
Constructor Detail |
public ZipOutputStream(OutputStream out)
out
- the actual output streamMethod Detail |
private void ensureOpen() throws IOException
IOException
public void setComment(String comment)
comment
- the comment string
IllegalArgumentException
- if the length of the specified
ZIP file comment is greater than 0xFFFF bytespublic void setMethod(int method)
method
- the default compression method
IllegalArgumentException
- if the specified compression method
is invalidpublic void setLevel(int level)
level
- the compression level (0-9)
IllegalArgumentException
- if the compression level is invalidpublic void putNextEntry(ZipEntry e) throws IOException
e
- the ZIP entry to be written
ZipException
- if a ZIP format error has occurred
IOException
- if an I/O error has occurredpublic void closeEntry() throws IOException
ZipException
- if a ZIP format error has occurred
IOException
- if an I/O error has occurredpublic void write(byte[] b, int off, int len) throws IOException
write
in class DeflaterOutputStream
b
- the data to be writtenoff
- the start offset in the datalen
- the number of bytes that are written
ZipException
- if a ZIP file error has occurred
IOException
- if an I/O error has occurredpublic void finish() throws IOException
finish
in class DeflaterOutputStream
ZipException
- if a ZIP file error has occurred
IOException
- if an I/O exception has occurredpublic void close() throws IOException
close
in class DeflaterOutputStream
ZipException
- if a ZIP file error has occurred
IOException
- if an I/O error has occurredprivate void writeLOC(ZipEntry e) throws IOException
IOException
private void writeEXT(ZipEntry e) throws IOException
IOException
private void writeCEN(ZipEntry e) throws IOException
IOException
private void writeEND(long off, long len) throws IOException
IOException
private void writeShort(int v) throws IOException
IOException
private void writeInt(long v) throws IOException
IOException
private void writeBytes(byte[] b, int off, int len) throws IOException
IOException
static int getUTF8Length(String s)
private static byte[] getUTF8Bytes(String s)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |