public class ZipFile extends Object implements Closeable
Unless otherwise noted, passing a null argument to a constructor
or method in this class will cause a NullPointerException
to be
thrown.
Modifier and Type | Field and Description |
---|---|
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 |
static int |
ENDCOM |
static int |
ENDHDR |
static int |
ENDOFF |
static long |
ENDSIG |
static int |
ENDSIZ |
static int |
ENDSUB |
static int |
ENDTOT |
static int |
EXTCRC |
static int |
EXTHDR |
static int |
EXTLEN |
static long |
EXTSIG |
static int |
EXTSIZ |
static int |
LOCCRC |
static int |
LOCEXT |
static int |
LOCFLG |
static int |
LOCHDR |
static int |
LOCHOW |
static int |
LOCLEN |
static int |
LOCNAM |
static long |
LOCSIG |
static int |
LOCSIZ |
static int |
LOCTIM |
static int |
LOCVER |
static int |
OPEN_DELETE
Mode flag to open a zip file and mark it for deletion.
|
static int |
OPEN_READ
Mode flag to open a zip file for reading.
|
Constructor and Description |
---|
ZipFile(File file)
Opens a ZIP file for reading given the specified File object.
|
ZipFile(File file,
Charset charset)
Opens a ZIP file for reading given the specified File object.
|
ZipFile(File file,
int mode)
Opens a new
ZipFile to read from the specified
File object in the specified mode. |
ZipFile(File file,
int mode,
Charset charset)
Opens a new
ZipFile to read from the specified
File object in the specified mode. |
ZipFile(String name)
Opens a zip file for reading.
|
ZipFile(String name,
Charset charset)
Opens a zip file for reading.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes the ZIP file.
|
Enumeration<? extends ZipEntry> |
entries()
Returns an enumeration of the ZIP file entries.
|
protected void |
finalize()
Ensures that the system resources held by this ZipFile object are
released when there are no more references to it.
|
String |
getComment()
Returns the zip file comment, or null if none.
|
ZipEntry |
getEntry(String name)
Returns the zip file entry for the specified name, or null
if not found.
|
InputStream |
getInputStream(ZipEntry entry)
Returns an input stream for reading the contents of the specified
zip file entry.
|
String |
getName()
Returns the path name of the ZIP file.
|
int |
size()
Returns the number of entries in the ZIP file.
|
Stream<? extends ZipEntry> |
stream()
Return an ordered
Stream over the ZIP file entries. |
public static final int OPEN_READ
public static final int OPEN_DELETE
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
public ZipFile(String name) throws IOException
First, if there is a security manager, its checkRead
method is called with the name
argument as its argument
to ensure the read is allowed.
The UTF-8 charset
is used to
decode the entry names and comments.
name
- the name of the zip fileZipException
- if a ZIP format error has occurredIOException
- if an I/O error has occurredSecurityException
- if a security manager exists and its
checkRead
method doesn't allow read access to the file.SecurityManager.checkRead(java.lang.String)
public ZipFile(File file, int mode) throws IOException
ZipFile
to read from the specified
File
object in the specified mode. The mode argument
must be either OPEN_READ or OPEN_READ | OPEN_DELETE.
First, if there is a security manager, its checkRead
method is called with the name
argument as its argument to
ensure the read is allowed.
The UTF-8 charset
is used to
decode the entry names and comments
file
- the ZIP file to be opened for readingmode
- the mode in which the file is to be openedZipException
- if a ZIP format error has occurredIOException
- if an I/O error has occurredSecurityException
- if a security manager exists and
its checkRead
method
doesn't allow read access to the file,
or its checkDelete
method doesn't allow deleting
the file when the OPEN_DELETE flag is set.IllegalArgumentException
- if the mode argument is invalidSecurityManager.checkRead(java.lang.String)
public ZipFile(File file) throws ZipException, IOException
The UTF-8 charset
is used to
decode the entry names and comments.
file
- the ZIP file to be opened for readingZipException
- if a ZIP format error has occurredIOException
- if an I/O error has occurredpublic ZipFile(File file, int mode, Charset charset) throws IOException
ZipFile
to read from the specified
File
object in the specified mode. The mode argument
must be either OPEN_READ or OPEN_READ | OPEN_DELETE.
First, if there is a security manager, its checkRead
method is called with the name
argument as its argument to
ensure the read is allowed.
file
- the ZIP file to be opened for readingmode
- the mode in which the file is to be openedcharset
- the charset to
be used to decode the ZIP entry name and comment that are not
encoded by using UTF-8 encoding (indicated by entry's general
purpose flag).ZipException
- if a ZIP format error has occurredIOException
- if an I/O error has occurredSecurityException
- if a security manager exists and its checkRead
method doesn't allow read access to the file,or its
checkDelete
method doesn't allow deleting the
file when the OPEN_DELETE flag is setIllegalArgumentException
- if the mode argument is invalidSecurityManager.checkRead(java.lang.String)
public ZipFile(String name, Charset charset) throws IOException
First, if there is a security manager, its checkRead
method is called with the name
argument as its argument
to ensure the read is allowed.
name
- the name of the zip filecharset
- the charset to
be used to decode the ZIP entry name and comment that are not
encoded by using UTF-8 encoding (indicated by entry's general
purpose flag).ZipException
- if a ZIP format error has occurredIOException
- if an I/O error has occurredSecurityException
- if a security manager exists and its checkRead
method doesn't allow read access to the fileSecurityManager.checkRead(java.lang.String)
public ZipFile(File file, Charset charset) throws IOException
file
- the ZIP file to be opened for readingcharset
- The charset to be
used to decode the ZIP entry name and comment (ignored if
the language
encoding bit of the ZIP entry's general purpose bit
flag is set).ZipException
- if a ZIP format error has occurredIOException
- if an I/O error has occurredpublic String getComment()
IllegalStateException
- if the zip file has been closed
Since 1.7public ZipEntry getEntry(String name)
name
- the name of the entryIllegalStateException
- if the zip file has been closedpublic InputStream getInputStream(ZipEntry entry) throws IOException
Closing this ZIP file will, in turn, close all input streams that have been returned by invocations of this method.
entry
- the zip file entryZipException
- if a ZIP format error has occurredIOException
- if an I/O error has occurredIllegalStateException
- if the zip file has been closedpublic String getName()
public Enumeration<? extends ZipEntry> entries()
IllegalStateException
- if the zip file has been closedpublic Stream<? extends ZipEntry> stream()
Stream
over the ZIP file entries.
Entries appear in the Stream
in the order they appear in
the central directory of the ZIP file.Stream
of entries in this ZIP fileIllegalStateException
- if the zip file has been closedpublic int size()
IllegalStateException
- if the zip file has been closedpublic void close() throws IOException
Closing this ZIP file will close all of the input streams
previously returned by invocations of the getInputStream
method.
close
in interface Closeable
close
in interface AutoCloseable
IOException
- if an I/O error has occurredprotected void finalize() throws IOException
Since the time when GC would invoke this method is undetermined,
it is strongly recommended that applications invoke the close
method as soon they have finished accessing this ZipFile
.
This will prevent holding up system resources for an undetermined
length of time.
finalize
in class Object
IOException
- if an I/O error has occurredclose()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.