public class ZipFile extends Object implements Closeable
除非另有说明,否则将null参数传递给此类中的构造函数或方法将导致抛出NullPointerException
。
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
模式标志打开一个zip文件并标记为删除。
|
static int |
OPEN_READ
模式标志打开一个zip文件进行阅读。
|
Constructor and Description |
---|
ZipFile(File file)
打开一个ZIP文件,读取指定的File对象。
|
ZipFile(File file, Charset charset)
打开一个ZIP文件,读取指定的File对象。
|
ZipFile(File file, int mode)
打开一个新的
ZipFile ,以
ZipFile 方式读取指定的
File 对象。
|
ZipFile(File file, int mode, Charset charset)
打开一个新的
ZipFile ,以指定的方式从指定的
File 对象中读取。
|
ZipFile(String name)
打开一个zip文件进行阅读。
|
ZipFile(String name, Charset charset)
打开一个zip文件进行阅读。
|
Modifier and Type | Method and Description |
---|---|
void |
close()
关闭ZIP文件。
|
Enumeration<? extends ZipEntry> |
entries()
返回ZIP文件条目的枚举。
|
protected void |
finalize()
确保在不再有引用该ZipFile对象时,系统资源被释放。
|
String |
getComment()
返回zip文件注释,否则返回null。
|
ZipEntry |
getEntry(String name)
返回指定名称的zip文件条目,如果找不到则返回null。
|
InputStream |
getInputStream(ZipEntry entry)
返回用于读取指定zip文件条目内容的输入流。
|
String |
getName()
返回ZIP文件的路径名。
|
int |
size()
返回ZIP文件中的条目数。
|
Stream<? extends ZipEntry> |
stream()
在ZIP文件条目上返回一个订购的
Stream 。
|
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
name
- zip文件的名称
ZipException
- 如果发生ZIP格式错误
IOException
- 如果发生I / O错误
SecurityException
- 如果安全管理器存在,并且其
checkRead
方法不允许对该文件的读取访问。
SecurityManager.checkRead(java.lang.String)
public ZipFile(File file, int mode) throws IOException
ZipFile
,以ZipFile
方式读取指定的File
对象。
mode参数必须是OPEN_READ或OPEN_READ | OPEN_DELETE 。
首先,如果有一个安全管理器,它的checkRead
方法被调用,以name
参数作为参数,以确保读取被允许。
UTF-8 charset
用于对条目名称和注释进行解码
file
- 要打开阅读的ZIP文件
mode
- 要打开文件的模式
ZipException
- 如果发生ZIP格式错误
IOException
- 如果发生I / O错误
SecurityException
- 如果存在安全管理员,并且其
checkRead
方法不允许对文件进行读取访问,或者
checkDelete
方法在设置
OPEN_DELETE标志时不允许删除该文件。
IllegalArgumentException
- 如果
mode参数无效
SecurityManager.checkRead(java.lang.String)
public ZipFile(File file) throws ZipException, IOException
UTF-8 charset
用于解码条目名称和注释。
file
- 要打开阅读的ZIP文件
ZipException
- 如果发生ZIP格式错误
IOException
- 如果发生I / O错误
public ZipFile(File file, int mode, Charset charset) throws IOException
ZipFile
,以ZipFile
方式读取指定的File
对象。
mode参数必须是OPEN_READ或OPEN_READ | OPEN_DELETE 。
首先,如果有一个安全管理器,它的checkRead
方法被调用,以name
参数作为参数,以确保读取被允许。
file
- 要打开阅读的ZIP文件
mode
- 要打开文件的模式
charset
-的charset被用于未使用UTF-8编码(由条目的通用标志位指示)编码的ZIP条目名称和注释进行解码。
ZipException
- 如果发生ZIP格式错误
IOException
- 如果发生I / O错误
SecurityException
- 如果存在安全管理员,并且其
checkRead
方法不允许对该文件进行读取访问,或者
checkDelete
方法在设置
OPEN_DELETE标志时不允许删除该文件
IllegalArgumentException
- 如果
mode参数无效
SecurityManager.checkRead(java.lang.String)
public ZipFile(String name, Charset charset) throws IOException
首先,如果有一个安全管理器,它的checkRead
方法name
参数作为参数来调用,以确保读取被允许。
name
- zip文件的名称
charset
-的charset被用于未使用UTF-8编码(由条目的通用标志位指示)编码的ZIP条目名称和注释进行解码。
ZipException
- 如果发生ZIP格式错误
IOException
- 如果发生I / O错误
SecurityException
- 如果存在安全管理员,并且其
checkRead
方法不允许对文件的读取访问
SecurityManager.checkRead(java.lang.String)
public ZipFile(File file, Charset charset) throws IOException
file
- 要打开阅读的ZIP文件
charset
-该charset要使用到ZIP条目名称和注释(忽略,如果解码language encoding bit ZIP条目的通用位标志的设置)。
ZipException
- 如果发生ZIP格式错误
IOException
- 如果发生I / O错误
public String getComment()
IllegalStateException
- 如果zip文件已关闭从1.7开始
public ZipEntry getEntry(String name)
name
- 条目的名称
IllegalStateException
- 如果zip文件已关闭
public InputStream getInputStream(ZipEntry entry) throws IOException
关闭此ZIP文件将反过来关闭通过此方法的调用返回的所有输入流。
entry
- zip文件条目
ZipException
- 如果发生ZIP格式错误
IOException
- 如果发生I / O错误
IllegalStateException
- 如果zip文件已关闭
public String getName()
public Enumeration<? extends ZipEntry> entries()
IllegalStateException
- 如果zip文件已关闭
public Stream<? extends ZipEntry> stream()
Stream
。
条目按照它们出现在ZIP文件的中央Stream
中的顺序出现在Stream中。
Stream
IllegalStateException
- 如果zip文件已关闭
public int size()
IllegalStateException
- 如果zip文件已关闭
public void close() throws IOException
关闭此ZIP文件将关闭以前通过getInputStream
方法的调用返回的所有输入流。
close
在界面
Closeable
close
在界面
AutoCloseable
IOException
- 如果发生I / O错误
protected void finalize() throws IOException
由于当GC将调用此方法是不确定的时候,强烈建议应用程序调用close
方法一旦他们完成了访问该ZipFile
。 这将阻止系统资源的持续时间长短。
finalize
在类别
Object
IOException
- 如果发生I / O错误
close()