JavaTM 2 Platform
Standard Edition

java.util.zip
Class ZipInputStream

java.lang.Object
  |
  +--java.io.InputStream
        |
        +--java.io.FilterInputStream
              |
              +--java.util.zip.InflaterInputStream
                    |
                    +--java.util.zip.ZipInputStream
Direct Known Subclasses:
JarInputStream

public class ZipInputStream
extends InflaterInputStream
implements java.util.zip.ZipConstants

This class implements an input stream filter for reading files in the ZIP file format. Includes support for both compressed and uncompressed entries.


Fields inherited from class java.util.zip.InflaterInputStream
buf, inf, len
 
Fields inherited from class java.io.FilterInputStream
in
 
Fields inherited from interface java.util.zip.ZipConstants
CENATT, CENATX, CENCOM, CENCRC, CENDSK, CENEXT, CENFLG, CENHDR, CENHOW, CENLEN, CENNAM, CENOFF, CENSIG, CENSIZ, CENTIM, CENVEM, CENVER, ENDCOM, ENDHDR, ENDOFF, ENDSIG, ENDSIZ, ENDSUB, ENDTOT, EXTCRC, EXTHDR, EXTLEN, EXTSIG, EXTSIZ, LOCCRC, LOCEXT, LOCFLG, LOCHDR, LOCHOW, LOCLEN, LOCNAM, LOCSIG, LOCSIZ, LOCTIM, LOCVER
 
Constructor Summary
ZipInputStream(InputStream in)
          Creates a new ZIP input stream.
 
Method Summary
 int available()
          Returns 0 after EOF has reached for the current entry data, otherwise always return 1.
 void close()
          Closes the ZIP input stream.
 void closeEntry()
          Closes the current ZIP entry and positions the stream for reading the next entry.
protected  ZipEntry createZipEntry(String name)
          Creates a new ZipEntry object for the specified entry name.
 ZipEntry getNextEntry()
          Reads the next ZIP file entry and positions stream at the beginning of the entry data.
 int read(byte[] b, int off, int len)
          Reads from the current ZIP entry into an array of bytes.
 long skip(long n)
          Skips specified number of bytes in the current ZIP entry.
 
Methods inherited from class java.util.zip.InflaterInputStream
fill, read
 
Methods inherited from class java.io.FilterInputStream
mark, markSupported, read, reset
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ZipInputStream

public ZipInputStream(InputStream in)
Creates a new ZIP input stream.
Parameters:
in - the actual input stream
Method Detail

getNextEntry

public ZipEntry getNextEntry()
                      throws IOException
Reads the next ZIP file entry and positions stream at the beginning of the entry data.
Throws:
ZipException - if a ZIP file 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 reading the next entry.
Throws:
ZipException - if a ZIP file error has occurred
IOException - if an I/O error has occurred

available

public int available()
              throws IOException
Returns 0 after EOF has reached for the current entry data, otherwise always return 1.

Programs should not count on this method to return the actual number of bytes that could be read without blocking.

Overrides:
available in class InflaterInputStream
Returns:
1 before EOF and 0 after EOF has reached for current entry.
Throws:
IOException - if an I/O error occurs.

read

public int read(byte[] b,
                int off,
                int len)
         throws IOException
Reads from the current ZIP entry into an array of bytes. Blocks until some input is available.
Overrides:
read in class InflaterInputStream
Parameters:
b - the buffer into which the data is read
off - the start offset of the data
len - the maximum number of bytes read
Returns:
the actual number of bytes read, or -1 if the end of the entry is reached
Throws:
ZipException - if a ZIP file error has occurred
IOException - if an I/O error has occurred

skip

public long skip(long n)
          throws IOException
Skips specified number of bytes in the current ZIP entry.
Overrides:
skip in class InflaterInputStream
Parameters:
n - the number of bytes to skip
Returns:
the actual number of bytes skipped
Throws:
ZipException - if a ZIP file error has occurred
IOException - if an I/O error has occurred
IllegalArgumentException - if n < 0

close

public void close()
           throws IOException
Closes the ZIP input stream.
Overrides:
close in class InflaterInputStream
Throws:
IOException - if an I/O error has occurred

createZipEntry

protected ZipEntry createZipEntry(String name)
Creates a new ZipEntry object for the specified entry name.
Parameters:
name - the ZIP file entry name

JavaTM 2 Platform
Standard Edition

Submit a bug or feature
Java, Java 2D, and JDBC are a trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1999 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.