JarFile
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
Inherited constants
|
From class ZipFile
Int |
OPEN_DELETE
Mode flag to open a zip file and mark it for deletion. The file will be deleted some time between the moment that it is opened and the moment that it is closed, but its contents will remain accessible via the ZipFile object until either the close method is invoked or the virtual machine exits.
|
Int |
OPEN_READ
Mode flag to open a zip file for reading.
|
|
Public constructors
|
|
Creates a new JarFile to read from the specified file name.
|
|
Creates a new JarFile to read from the specified file name.
|
|
Creates a new JarFile to read from the specified File object.
|
|
Creates a new JarFile to read from the specified File object.
|
|
Creates a new JarFile to read from the specified File object in the specified mode.
|
Public methods
|
| open Enumeration<JarEntry!>! |
Returns an enumeration of the zip file entries.
|
| open ZipEntry! |
Returns the ZipEntry for the given entry name or null if not found.
|
| open InputStream! |
Returns an input stream for reading the contents of the specified zip file entry.
|
| open JarEntry! |
Returns the JarEntry for the given entry name or null if not found.
|
| open Manifest! |
Returns the jar file manifest, or null if none.
|
| open Stream<JarEntry!>! |
|
Inherited functions
|
From class ZipFile
Unit |
close()
Closes the ZIP file.
Closing this ZIP file will close all of the input streams previously returned by invocations of the getInputStream method.
|
Unit |
finalize()
Ensures that the system resources held by this ZipFile object are released when there are no more references to it.
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.
|
String! |
getComment()
Returns the zip file comment, or null if none.
|
String! |
getName()
Returns the path name of the ZIP file.
|
Int |
size()
Returns the number of entries in the ZIP file.
|
|
Constants
CENATT
static val CENATT: Int
Value: 36
CENATX
static val CENATX: Int
Value: 38
CENCOM
static val CENCOM: Int
Value: 32
CENCRC
static val CENCRC: Int
Value: 16
CENDSK
static val CENDSK: Int
Value: 34
CENEXT
static val CENEXT: Int
Value: 30
CENFLG
static val CENFLG: Int
Value: 8
CENHDR
static val CENHDR: Int
Value: 46
CENHOW
static val CENHOW: Int
Value: 10
CENLEN
static val CENLEN: Int
Value: 24
CENNAM
static val CENNAM: Int
Value: 28
CENOFF
static val CENOFF: Int
Value: 42
CENSIG
static val CENSIG: Long
Value: 33639248L
CENSIZ
static val CENSIZ: Int
Value: 20
CENTIM
static val CENTIM: Int
Value: 12
CENVEM
static val CENVEM: Int
Value: 4
CENVER
static val CENVER: Int
Value: 6
ENDCOM
static val ENDCOM: Int
Value: 20
ENDHDR
static val ENDHDR: Int
Value: 22
ENDOFF
static val ENDOFF: Int
Value: 16
ENDSIG
static val ENDSIG: Long
Value: 101010256L
ENDSIZ
static val ENDSIZ: Int
Value: 12
ENDSUB
static val ENDSUB: Int
Value: 8
ENDTOT
static val ENDTOT: Int
Value: 10
EXTCRC
static val EXTCRC: Int
Value: 4
EXTHDR
static val EXTHDR: Int
Value: 16
EXTLEN
static val EXTLEN: Int
Value: 12
EXTSIG
static val EXTSIG: Long
Value: 134695760L
EXTSIZ
static val EXTSIZ: Int
Value: 8
LOCCRC
static val LOCCRC: Int
Value: 14
LOCEXT
static val LOCEXT: Int
Value: 28
LOCFLG
static val LOCFLG: Int
Value: 6
LOCHDR
static val LOCHDR: Int
Value: 30
LOCHOW
static val LOCHOW: Int
Value: 8
LOCLEN
static val LOCLEN: Int
Value: 22
LOCNAM
static val LOCNAM: Int
Value: 26
LOCSIG
static val LOCSIG: Long
Value: 67324752L
LOCSIZ
static val LOCSIZ: Int
Value: 18
LOCTIM
static val LOCTIM: Int
Value: 10
LOCVER
static val LOCVER: Int
Value: 4
MANIFEST_NAME
static val MANIFEST_NAME: String
The JAR manifest file name.
Value: "META-INF/MANIFEST.MF"
Public constructors
<init>
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 |
<init>
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 |
<init>
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 |
<init>
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. |
<init>
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 |
Public methods
entries
open fun entries(): Enumeration<JarEntry!>!
Returns 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 |
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.util.zip.ZipException |
if a zip file format error has occurred |
java.io.IOException |
if an I/O error has occurred |
java.lang.IllegalStateException |
may be thrown if the jar file has been closed |
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.lang.IllegalStateException |
may be thrown if the jar file has been closed |
java.io.IOException |
if an I/O error has occurred |
stream
open fun stream(): Stream<JarEntry!>!
| Return |
Stream<JarEntry!>! |
an ordered Stream of entries in this ZIP file |
| Exceptions |
java.lang.IllegalStateException |
if the zip file has been closed |