public class JarInputStream extends ZipInputStream
JarInputStream类用于从任何输入流读取JAR文件的内容。
它扩展了类java.util.zip.ZipInputStream ,支持阅读可选的Manifest条目。
Manifest可用于存储有关JAR文件及其条目的元信息。
Manifest , ZipInputStream
| 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 |
buf, inf, lenin| Constructor and Description |
|---|
JarInputStream(InputStream in)
创建一个新的
JarInputStream并读取可选的清单。
|
JarInputStream(InputStream in, boolean verify)
创建一个新的
JarInputStream并读取可选的清单。
|
| Modifier and Type | Method and Description |
|---|---|
protected ZipEntry |
createZipEntry(String name)
为指定的JAR文件条目名称创建一个新的
JarEntry (
ZipEntry )。
|
Manifest |
getManifest()
返回
Manifest这个JAR文件,或
null如果没有。
|
ZipEntry |
getNextEntry()
读取下一个ZIP文件条目,并将流定位在条目数据的开头。
|
JarEntry |
getNextJarEntry()
读取下一个JAR文件条目,并将流定位在条目数据的开头。
|
int |
read(byte[] b, int off, int len)
从当前的JAR文件条目读入一个字节数组。
|
available, close, closeEntry, skipfill, mark, markSupported, read, resetreadpublic 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 JarInputStream(InputStream in) throws IOException
JarInputStream并读取可选的清单。
如果存在清单,还尝试验证JarInputStream是否已经签名的签名。
in - 实际的输入流
IOException - 如果发生I / O错误
public JarInputStream(InputStream in, boolean verify) throws IOException
JarInputStream并读取可选的清单。
如果清单存在并且验证是真的,那么如果JarInputStream被签名,也尝试验证签名。
in - 实际的输入流
verify - 是否验证JarInputStream是否被签名。
IOException - 如果发生I / O错误
public Manifest getManifest()
Manifest这个JAR文件,或
null如果没有。
Manifest这个JAR文件,或
null如果没有。
public ZipEntry getNextEntry() throws IOException
getNextEntry在
ZipInputStream
ZipException - 如果发生ZIP文件错误
IOException - 如果发生I / O错误
SecurityException - 如果任何jar文件条目未正确签名。
public JarEntry getNextJarEntry() throws IOException
ZipException - 如果发生ZIP文件错误
IOException - 如果发生I / O错误
SecurityException - 如果任何jar文件条目未正确签名。
public int read(byte[] b,
int off,
int len)
throws IOException
len不为零,则该方法将阻塞直到某些输入可用;
否则,不会读取字节,并返回0 。
如果已启用验证,则在到达条目结束前的某个时刻将会报告当前条目中的任何无效签名。
read在
ZipInputStream
b - 读取数据的缓冲区
off - 目标数组
b的起始偏移量
len - 要读取的最大字节数
NullPointerException - 如果
b是
null 。
IndexOutOfBoundsException - 如果
off为负数,则
len为负数,或
len大于
b.length - off
ZipException - 如果发生ZIP文件错误
IOException - 如果发生I / O错误
SecurityException - 如果任何jar文件条目未正确签名。
FilterInputStream.in
protected ZipEntry createZipEntry(String name)
JarEntry ( ZipEntry )。
指定的JAR文件条目名称的清单属性将被复制到新的JarEntry 。
createZipEntry在
ZipInputStream
name - JAR / ZIP文件条目的名称
JarEntry对象
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, 2014, Oracle and/or its affiliates. All rights reserved.