open class JarFile : ZipFile
The JarFile class is used to read the contents of a jar file from any file that can be opened with java.io.RandomAccessFile. It extends the class java.util.zip.ZipFile with support for reading an optional Manifest entry. The Manifest can be used to specify meta-information about the jar file and its entries.
Unless otherwise noted, passing a null argument to a constructor or method in this class will cause a NullPointerException to be thrown. If the verify flag is on when opening a signed jar file, the content of the file is verified against its signature embedded inside the file. Please note that the verification process does not include validating the signer's certificate. A caller should inspect the return value of JarEntry.getCodeSigners() to further determine if the signature can be trusted.
Summary
| Constants | |
|---|---|
| static Int |
Central directory (CEN) header internal file attributes field offset. |
| static Int |
Central directory (CEN) header external file attributes field offset. |
| static Int |
Central directory (CEN) header comment length field offset. |
| static Int |
Central directory (CEN) header uncompressed file crc-32 value field offset. |
| static Int |
Central directory (CEN) header disk number start field offset. |
| static Int |
Central directory (CEN) header extra field length field offset. |
| static Int |
Central directory (CEN) header encrypt, decrypt flags field offset. |
| static Int |
Central directory (CEN) header size in bytes (including signature). |
| static Int |
Central directory (CEN) header compression method field offset. |
| static Int |
Central directory (CEN) header uncompressed size field offset. |
| static Int |
Central directory (CEN) header filename length field offset. |
| static Int |
Central directory (CEN) header LOC header offset field offset. |
| static Long |
Central directory (CEN) header signature. |
| static Int |
Central directory (CEN) header compressed size field offset. |
| static Int |
Central directory (CEN) header modification time field offset. |
| static Int |
Central directory (CEN) header version made by field offset. |
| static Int |
Central directory (CEN) header version needed to extract field offset. |
| static Int |
End of central directory (END) header zip file comment length field offset. |
| static Int |
End of central directory (END) header size in bytes (including signature). |
| static Int |
End of central directory (END) header offset for the first CEN header field offset. |
| static Long |
End of central directory (END) header signature. |
| static Int |
End of central directory (END) header central directory size in bytes field offset. |
| static Int |
End of central directory (END) header number of entries on this disk field offset. |
| static Int |
End of central directory (END) header total number of entries field offset. |
| static Int |
Extra local (EXT) header uncompressed file crc-32 value field offset. |
| static Int |
Extra local (EXT) header size in bytes (including signature). |
| static Int |
Extra local (EXT) header uncompressed size field offset. |
| static Long |
Extra local (EXT) header signature. |
| static Int |
Extra local (EXT) header compressed size field offset. |
| static Int |
Local file (LOC) header uncompressed file crc-32 value field offset. |
| static Int |
Local file (LOC) header extra field length field offset. |
| static Int |
Local file (LOC) header general purpose bit flag field offset. |
| static Int |
Local file (LOC) header size in bytes (including signature). |
| static Int |
Local file (LOC) header compression method field offset. |
| static Int |
Local file (LOC) header uncompressed size field offset. |
| static Int |
Local file (LOC) header filename length field offset. |
| static Long |
Local file (LOC) header signature. |
| static Int |
Local file (LOC) header compressed size field offset. |
| static Int |
Local file (LOC) header modification time field offset. |
| static Int |
Local file (LOC) header version needed to extract field offset. |
| static String |
The JAR manifest file name. |
| Inherited constants | |||||
|---|---|---|---|---|---|
|
From class
|
|||||
| Public constructors | |
|---|---|
|
Creates a new |
|
|
Creates a new |
|
|
Creates a new |
|
|
Creates a new |
|
|
Creates a new |
|
| Public methods | |
|---|---|
| open Enumeration<JarEntry!>! |
Returns an enumeration of the zip file entries. |
| open ZipEntry! |
Returns the |
| open InputStream! |
Returns an input stream for reading the contents of the specified zip file entry. |
| open JarEntry! |
Returns the |
| open Manifest! |
Returns the jar file manifest, or |
| open Stream<JarEntry!>! |
Returns an ordered |
| Inherited functions | |||||||||
|---|---|---|---|---|---|---|---|---|---|
|
From class
|
|||||||||
Constants
CENATT
static val CENATT: Int
Central directory (CEN) header internal file attributes field offset.
Value: 36
CENATX
static val CENATX: Int
Central directory (CEN) header external file attributes field offset.
Value: 38
CENCRC
static val CENCRC: Int
Central directory (CEN) header uncompressed file crc-32 value field offset.
Value: 16
CENDSK
static val CENDSK: Int
Central directory (CEN) header disk number start field offset.
Value: 34
CENEXT
static val CENEXT: Int
Central directory (CEN) header extra field length field offset.
Value: 30
CENFLG
static val CENFLG: Int
Central directory (CEN) header encrypt, decrypt flags field offset.
Value: 8
CENHDR
static val CENHDR: Int
Central directory (CEN) header size in bytes (including signature).
Value: 46
CENHOW
static val CENHOW: Int
Central directory (CEN) header compression method field offset.
Value: 10
CENLEN
static val CENLEN: Int
Central directory (CEN) header uncompressed size field offset.
Value: 24
CENNAM
static val CENNAM: Int
Central directory (CEN) header filename length field offset.
Value: 28
CENOFF
static val CENOFF: Int
Central directory (CEN) header LOC header offset field offset.
Value: 42
CENSIZ
static val CENSIZ: Int
Central directory (CEN) header compressed size field offset.
Value: 20
CENTIM
static val CENTIM: Int
Central directory (CEN) header modification time field offset.
Value: 12
CENVER
static val CENVER: Int
Central directory (CEN) header version needed to extract field offset.
Value: 6
ENDCOM
static val ENDCOM: Int
End of central directory (END) header zip file comment length field offset.
Value: 20
ENDHDR
static val ENDHDR: Int
End of central directory (END) header size in bytes (including signature).
Value: 22
ENDOFF
static val ENDOFF: Int
End of central directory (END) header offset for the first CEN header field offset.
Value: 16
ENDSIZ
static val ENDSIZ: Int
End of central directory (END) header central directory size in bytes field offset.
Value: 12
ENDSUB
static val ENDSUB: Int
End of central directory (END) header number of entries on this disk field offset.
Value: 8
ENDTOT
static val ENDTOT: Int
End of central directory (END) header total number of entries field offset.
Value: 10
EXTCRC
static val EXTCRC: Int
Extra local (EXT) header uncompressed file crc-32 value field offset.
Value: 4
EXTHDR
static val EXTHDR: Int
Extra local (EXT) header size in bytes (including signature).
Value: 16
LOCCRC
static val LOCCRC: Int
Local file (LOC) header uncompressed file crc-32 value field offset.
Value: 14
LOCFLG
static val LOCFLG: Int
Local file (LOC) header general purpose bit flag field offset.
Value: 6
LOCHDR
static val LOCHDR: Int
Local file (LOC) header size in bytes (including signature).
Value: 30
LOCVER
static val LOCVER: Int
Local file (LOC) header version needed to extract field offset.
Value: 4
MANIFEST_NAME
static val MANIFEST_NAME: String
The JAR manifest file name.
Value: "META-INF/MANIFEST.MF"
Public constructors
JarFile
JarFile(file: File!)
Creates a new JarFile to read from the specified File object. The JarFile will be verified if it is signed.
| Parameters | |
|---|---|
file |
File!: the jar file to be opened for reading |
| Exceptions | |
|---|---|
java.io.IOException |
if an I/O error has occurred |
java.lang.SecurityException |
if access to the file is denied by the SecurityManager |
JarFile
JarFile(
file: File!,
verify: Boolean)
Creates a new JarFile to read from the specified File object.
| Parameters | |
|---|---|
file |
File!: the jar file to be opened for reading |
verify |
Boolean: whether or not to verify the jar file if it is signed. |
| Exceptions | |
|---|---|
java.io.IOException |
if an I/O error has occurred |
java.lang.SecurityException |
if access to the file is denied by the SecurityManager. |
JarFile
JarFile(
file: File!,
verify: Boolean,
mode: Int)
Creates a new JarFile to read from the specified File object in the specified mode. The mode argument must be either OPEN_READ or OPEN_READ | OPEN_DELETE.
| Parameters | |
|---|---|
file |
File!: the jar file to be opened for reading |
verify |
Boolean: whether or not to verify the jar file if it is signed. |
mode |
Int: the mode in which the file is to be opened |
| Exceptions | |
|---|---|
java.io.IOException |
if an I/O error has occurred |
java.lang.IllegalArgumentException |
if the mode argument is invalid |
java.lang.SecurityException |
if access to the file is denied by the SecurityManager |
JarFile
JarFile(name: String!)
Creates a new JarFile to read from the specified file name. The JarFile will be verified if it is signed.
| Parameters | |
|---|---|
name |
String!: the name of the jar file to be opened for reading |
| Exceptions | |
|---|---|
java.io.IOException |
if an I/O error has occurred |
java.lang.SecurityException |
if access to the file is denied by the SecurityManager |
JarFile
JarFile(
name: String!,
verify: Boolean)
Creates a new JarFile to read from the specified file name.
| Parameters | |
|---|---|
name |
String!: the name of the jar file to be opened for reading |
verify |
Boolean: whether or not to verify the jar file if it is signed. |
| Exceptions | |
|---|---|
java.io.IOException |
if an I/O error has occurred |
java.lang.SecurityException |
if access to the file is denied by the SecurityManager |
Public methods
entries
open fun entries(): Enumeration<JarEntry!>!
Returns an enumeration of the zip file entries.
| Return | |
|---|---|
Enumeration<JarEntry!>! |
an enumeration of the ZIP file entries |
| Exceptions | |
|---|---|
java.lang.IllegalStateException |
if the zip file has been closed |
getEntry
open fun getEntry(name: String!): ZipEntry!
Returns the ZipEntry for the given entry name or null if not found.
| Parameters | |
|---|---|
name |
String!: the jar file entry name |
| Return | |
|---|---|
ZipEntry! |
the ZipEntry for the given entry name or null if not found |
| Exceptions | |
|---|---|
java.lang.IllegalStateException |
may be thrown if the jar file has been closed |
getInputStream
open fun getInputStream(ze: ZipEntry!): InputStream!
Returns an input stream for reading the contents of the specified zip file entry.
| Parameters | |
|---|---|
entry |
the zip file entry |
ze |
ZipEntry!: the zip file entry |
| Return | |
|---|---|
InputStream! |
an input stream for reading the contents of the specified zip file entry |
| Exceptions | |
|---|---|
java.io.IOException |
if an I/O error has occurred |
java.lang.IllegalStateException |
may be thrown if the jar file has been closed |
java.util.zip.ZipException |
if a zip file format error has occurred |
java.lang.SecurityException |
if any of the jar file entries are incorrectly signed. |
getJarEntry
open fun getJarEntry(name: String!): JarEntry!
Returns the JarEntry for the given entry name or null if not found.
| Parameters | |
|---|---|
name |
String!: the jar file entry name |
| Return | |
|---|---|
JarEntry! |
the JarEntry for the given entry name or null if not found. |
| Exceptions | |
|---|---|
java.lang.IllegalStateException |
may be thrown if the jar file has been closed |
getManifest
open fun getManifest(): Manifest!
Returns the jar file manifest, or null if none.
| Return | |
|---|---|
Manifest! |
the jar file manifest, or null if none |
| Exceptions | |
|---|---|
java.io.IOException |
if an I/O error has occurred |
java.lang.IllegalStateException |
may be thrown if the jar file has been closed |
stream
open fun stream(): Stream<JarEntry!>!
Returns an ordered Stream over the ZIP file entries. Entries appear in the Stream in the order they appear in the central directory of the ZIP file.
| Return | |
|---|---|
Stream<JarEntry!>! |
an ordered Stream of entries in this ZIP file |
| Exceptions | |
|---|---|
java.lang.IllegalStateException |
if the zip file has been closed |