- java.lang.Object
-
- java.io.InputStream
-
- java.io.FilterInputStream
-
- java.util.zip.InflaterInputStream
-
- java.util.zip.ZipInputStream
-
- java.util.jar.JarInputStream
-
- 实现的所有接口
-
Closeable,AutoCloseable
public class JarInputStream extends ZipInputStream
JarInputStream类用于从任何输入流中读取JAR文件的内容。 它扩展了java.util.zip.ZipInputStream类,支持读取可选的Manifest条目。Manifest可用于存储有关JAR文件及其条目的元信息。- 从以下版本开始:
- 1.2
- 另请参见:
-
Manifest,ZipInputStream
-
-
字段汇总
字段 变量和类型 字段 描述 static intCENATTstatic intCENATXstatic intCENCOMstatic intCENCRCstatic intCENDSKstatic intCENEXTstatic intCENFLGstatic intCENHDRstatic intCENHOWstatic intCENLENstatic intCENNAMstatic intCENOFFstatic longCENSIGstatic intCENSIZstatic intCENTIMstatic intCENVEMstatic intCENVERstatic intENDCOMstatic intENDHDRstatic intENDOFFstatic longENDSIGstatic intENDSIZstatic intENDSUBstatic intENDTOTstatic intEXTCRCstatic intEXTHDRstatic intEXTLENstatic longEXTSIGstatic intEXTSIZstatic intLOCCRCstatic intLOCEXTstatic intLOCFLGstatic intLOCHDRstatic intLOCHOWstatic intLOCLENstatic intLOCNAMstatic longLOCSIGstatic intLOCSIZstatic intLOCTIMstatic intLOCVER-
声明的属性在类 java.util.zip.InflaterInputStream
buf, inf, len
-
声明的属性在类 java.io.FilterInputStream
in
-
-
构造方法摘要
构造方法 构造器 描述 JarInputStream(InputStream in)创建一个新的JarInputStream并读取可选的清单。JarInputStream(InputStream in, boolean verify)创建一个新的JarInputStream并读取可选的清单。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 protected ZipEntrycreateZipEntry(String name)为指定的JAR文件条目名称创建新的JarEntry(ZipEntry)。ManifestgetManifest()返回此JAR文件的null如果没有,则返回Manifest。ZipEntrygetNextEntry()读取下一个ZIP文件条目,并将流定位在条目数据的开头。JarEntrygetNextJarEntry()读取下一个JAR文件条目并将流定位在条目数据的开头。intread(byte[] b, int off, int len)从当前JAR文件条目读入一个字节数组。-
声明方法的类 java.util.zip.ZipInputStream
available, close, closeEntry, skip
-
声明方法的类 java.util.zip.InflaterInputStream
fill, mark, markSupported, read, reset
-
声明方法的类 java.io.FilterInputStream
read
-
声明方法的类 java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, transferTo
-
-
-
-
字段详细信息
-
LOCSIG
public static final long LOCSIG
- 另请参见:
- 常数字段值
-
EXTSIG
public static final long EXTSIG
- 另请参见:
- 常数字段值
-
CENSIG
public static final long CENSIG
- 另请参见:
- 常数字段值
-
ENDSIG
public static final long ENDSIG
- 另请参见:
- 常数字段值
-
LOCHDR
public static final int LOCHDR
- 另请参见:
- 常数字段值
-
EXTHDR
public static final int EXTHDR
- 另请参见:
- 常数字段值
-
CENHDR
public static final int CENHDR
- 另请参见:
- 常数字段值
-
ENDHDR
public static final int ENDHDR
- 另请参见:
- 常数字段值
-
LOCVER
public static final int LOCVER
- 另请参见:
- 常数字段值
-
LOCFLG
public static final int LOCFLG
- 另请参见:
- 常数字段值
-
LOCHOW
public static final int LOCHOW
- 另请参见:
- 常数字段值
-
LOCTIM
public static final int LOCTIM
- 另请参见:
- 常数字段值
-
LOCCRC
public static final int LOCCRC
- 另请参见:
- 常数字段值
-
LOCSIZ
public static final int LOCSIZ
- 另请参见:
- 常数字段值
-
LOCLEN
public static final int LOCLEN
- 另请参见:
- 常数字段值
-
LOCNAM
public static final int LOCNAM
- 另请参见:
- 常数字段值
-
LOCEXT
public static final int LOCEXT
- 另请参见:
- 常数字段值
-
EXTCRC
public static final int EXTCRC
- 另请参见:
- 常数字段值
-
EXTSIZ
public static final int EXTSIZ
- 另请参见:
- 常数字段值
-
EXTLEN
public static final int EXTLEN
- 另请参见:
- 常数字段值
-
CENVEM
public static final int CENVEM
- 另请参见:
- 常数字段值
-
CENVER
public static final int CENVER
- 另请参见:
- 常数字段值
-
CENFLG
public static final int CENFLG
- 另请参见:
- 常数字段值
-
CENHOW
public static final int CENHOW
- 另请参见:
- 常数字段值
-
CENTIM
public static final int CENTIM
- 另请参见:
- 常数字段值
-
CENCRC
public static final int CENCRC
- 另请参见:
- 常数字段值
-
CENSIZ
public static final int CENSIZ
- 另请参见:
- 常数字段值
-
CENLEN
public static final int CENLEN
- 另请参见:
- 常数字段值
-
CENNAM
public static final int CENNAM
- 另请参见:
- 常数字段值
-
CENEXT
public static final int CENEXT
- 另请参见:
- 常数字段值
-
CENCOM
public static final int CENCOM
- 另请参见:
- 常数字段值
-
CENDSK
public static final int CENDSK
- 另请参见:
- 常数字段值
-
CENATT
public static final int CENATT
- 另请参见:
- 常数字段值
-
CENATX
public static final int CENATX
- 另请参见:
- 常数字段值
-
CENOFF
public static final int CENOFF
- 另请参见:
- 常数字段值
-
ENDSUB
public static final int ENDSUB
- 另请参见:
- 常数字段值
-
ENDTOT
public static final int ENDTOT
- 另请参见:
- 常数字段值
-
ENDSIZ
public static final int ENDSIZ
- 另请参见:
- 常数字段值
-
ENDOFF
public static final int ENDOFF
- 另请参见:
- 常数字段值
-
ENDCOM
public static final int ENDCOM
- 另请参见:
- 常数字段值
-
-
构造方法详细信息
-
JarInputStream
public JarInputStream(InputStream in) throws IOException
创建一个新的JarInputStream并读取可选的清单。 如果存在清单,则还会尝试在JarInputStream签名时验证签名。- 参数
-
in- 实际的输入流 - 异常
-
IOException- 如果发生I / O错误
-
JarInputStream
public JarInputStream(InputStream in, boolean verify) throws IOException
创建一个新的JarInputStream并读取可选的清单。 如果存在清单且验证为真,则还会尝试在JarInputStream签名时验证签名。- 参数
-
in- 实际输入流 -
verify- 是否验证JarInputStream是否已签名。 - 异常
-
IOException- 如果发生I / O错误
-
-
方法详细信息
-
getManifest
public Manifest getManifest()
返回此JAR文件的null如果没有,则返回Manifest。- 结果
-
该
Manifest这个JAR文件,或null如果没有。
-
getNextEntry
public ZipEntry getNextEntry() throws IOException
读取下一个ZIP文件条目,并将流定位在条目数据的开头。 如果已启用验证,则在为下一个条目定位流时检测到的任何无效签名都将导致异常。- 重写:
-
getNextEntry在类ZipInputStream - 结果
- 下一个ZIP文件条目,如果没有更多条目,则返回null
- 异常
-
ZipException- 如果发生ZIP文件错误 -
IOException- 如果发生I / O错误 -
SecurityException- 如果任何jar文件条目未正确签名。
-
getNextJarEntry
public JarEntry getNextJarEntry() throws IOException
读取下一个JAR文件条目并将流定位在条目数据的开头。 如果已启用验证,则在为下一个条目定位流时检测到的任何无效签名都将导致异常。- 结果
- 下一个JAR文件条目,如果没有更多条目,则返回null
- 异常
-
ZipException- 如果发生ZIP文件错误 -
IOException- 如果发生I / O错误 -
SecurityException- 如果任何jar文件条目未正确签名。
-
read
public int read(byte[] b, int off, int len) throws IOException从当前JAR文件条目读入一个字节数组。 如果len不为零,则该方法将阻塞,直到某些输入可用; 否则,不读取任何字节,并返回0。 如果已启用验证,则在到达条目结束之前的某个时间点将报告当前条目上的任何无效签名。- 重写:
-
read在类ZipInputStream - 参数
-
b- 读取数据的缓冲区 -
off- 目标数组b的起始偏移量 -
len- 要读取的最大字节数 - 结果
- 读取的实际字节数,如果到达条目的末尾,则返回-1
- 异常
-
NullPointerException- 如果b是null。 -
IndexOutOfBoundsException- 如果off为负数,len为负数,或len为负,lenb.length - off -
ZipException- 如果发生ZIP文件错误 -
IOException- 如果发生I / O错误 -
SecurityException- 如果任何jar文件条目未正确签名。 - 另请参见:
-
FilterInputStream.in
-
createZipEntry
protected ZipEntry createZipEntry(String name)
为指定的JAR文件条目名称创建新的JarEntry(ZipEntry)。 指定的JAR文件条目名称的清单属性将复制到新的JarEntry。- 重写:
-
createZipEntry在类ZipInputStream - 参数
-
name- JAR / ZIP文件条目的名称 - 结果
-
刚刚创建的
JarEntry对象
-
-