Added in API level 1

JarEntry

open class JarEntry : ZipEntry

This class is used to represent a JAR file entry.

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.

Inherited constants
Int DEFLATED

Compression method for compressed (deflated) entries.

Int STORED

Compression method for uncompressed entries.

Public constructors
JarEntry(name: String!)

Creates a new JarEntry for the specified JAR file entry name.

Creates a new JarEntry with fields taken from the specified JarEntry object.

Creates a new JarEntry with fields taken from the specified ZipEntry object.

Public methods
open Attributes!

Returns the Manifest Attributes for this entry, or null if none.

open Array<Certificate!>!

Returns the Certificate objects for this entry, or null if none.

open Array<CodeSigner!>!

Returns the CodeSigner objects for this entry, or null if none.

open String!

This method returns the same name that getName() returns.

Inherited functions
Any clone()

Returns a copy of this entry.

String! getComment()

Returns the comment string for the entry.

Long getCompressedSize()

Returns the size of the compressed entry data.

In the case of a stored entry, the compressed size will be the same as the uncompressed size of the entry.

Long getCrc()

Returns the CRC-32 checksum of the uncompressed entry data.

FileTime! getCreationTime()

Returns the creation time of the entry.

The creation time is from the extended timestamp fields of entry's optional extra data when read from a ZIP file or ZIP file formatted stream.

ByteArray! getExtra()

Returns the extra field data for the entry.

FileTime! getLastAccessTime()

Returns the last access time of the entry.

The last access time is from the extended timestamp fields of entry's optional extra data when read from a ZIP file or ZIP file formatted stream.

FileTime! getLastModifiedTime()

Returns the last modification time of the entry.

If the entry is read from a ZIP file or ZIP file formatted input stream, this is the last modification time from the zip file entry's optional extra data if the extended timestamp fields are present. Otherwise the last modification time is read from the entry's date and time fields, the default TimeZone is used to convert the standard MS-DOS formatted date and time to the epoch time.

Int getMethod()

Returns the compression method of the entry.

String! getName()

Returns the name of the entry.

Long getSize()

Returns the uncompressed size of the entry data.

Long getTime()

Returns the last modification time of the entry.

If the entry is read from a ZIP file or ZIP file formatted input stream, this is the last modification time from the date and time fields of the zip file entry. The default TimeZone is used to convert the standard MS-DOS formatted date and time to the epoch time.

LocalDateTime! getTimeLocal()

Returns the last modification time of the entry in local date-time.

If the entry is read from a ZIP file or ZIP file formatted input stream, this is the last modification time from the zip file entry's optional extra data if the extended timestamp fields are present. Otherwise, the last modification time is read from entry's standard MS-DOS formatted date and time fields.

The system default TimeZone is used to convert the UTC time to local date-time.

Int hashCode()

Returns the hash code value for this entry.

Boolean isDirectory()

Returns true if this is a directory entry. A directory entry is defined to be one whose name ends with a '/'.

Unit setComment(comment: String!)

Sets the optional comment string for the entry.

ZIP entry comments have maximum length of 0xffff. If the length of the specified comment string is greater than 0xFFFF bytes after encoding, only the first 0xFFFF bytes are output to the ZIP file entry.

Unit setCompressedSize(csize: Long)

Sets the size of the compressed entry data.

Unit setCrc(crc: Long)

Sets the CRC-32 checksum of the uncompressed entry data.

ZipEntry! setCreationTime(time: FileTime!)

Sets the creation time of the entry.

If set, the creation time will be stored into the extended timestamp fields of entry's optional extra data, when output to a ZIP file or ZIP file formatted stream.

Unit setExtra(extra: ByteArray!)

Sets the optional extra field data for the entry.

Invoking this method may change this entry's last modification time, last access time and creation time, if the extra field data includes the extensible timestamp fields, such as NTFS tag 0x0001 or Info-ZIP Extended Timestamp, as specified in Info-ZIP Application Note 970311.

ZipEntry! setLastAccessTime(time: FileTime!)

Sets the last access time of the entry.

If set, the last access time will be stored into the extended timestamp fields of entry's optional extra data, when output to a ZIP file or ZIP file formatted stream.

ZipEntry! setLastModifiedTime(time: FileTime!)

Sets the last modification time of the entry.

When output to a ZIP file or ZIP file formatted output stream the last modification time set by this method will be stored into zip file entry's date and time fields in standard MS-DOS date and time format), and the extended timestamp fields in optional extra data in UTC time.

Unit setMethod(method: Int)

Sets the compression method for the entry.

Unit setSize(size: Long)

Sets the uncompressed size of the entry data.

Unit setTime(time: Long)

Sets the last modification time of the entry.

If the entry is output to a ZIP file or ZIP file formatted output stream the last modification time set by this method will be stored into the date and time fields of the zip file entry and encoded in standard MS-DOS date and time format. The default TimeZone is used to convert the epoch time to the MS-DOS data and time.

Unit setTimeLocal(time: LocalDateTime!)

Sets the last modification time of the entry in local date-time.

If the entry is output to a ZIP file or ZIP file formatted output stream the last modification time set by this method will be stored into the date and time fields of the zip file entry and encoded in standard MS-DOS date and time format. If the date-time set is out of the range of the standard MS-DOS date and time format, the time will also be stored into zip file entry's extended timestamp fields in optional extra data in UTC time. The system default TimeZone is used to convert the local date-time to UTC time.

LocalDateTime uses a precision of nanoseconds, whereas this class uses a precision of milliseconds. The conversion will truncate any excess precision information as though the amount in nanoseconds was subject to integer division by one million.

String toString()

Returns a string representation of the ZIP entry.

Constants

CENATT

Added in API level 21
static val CENATT: Int

Central directory (CEN) header internal file attributes field offset.

Value: 36

CENATX

Added in API level 21
static val CENATX: Int

Central directory (CEN) header external file attributes field offset.

Value: 38

CENCOM

Added in API level 21
static val CENCOM: Int

Central directory (CEN) header comment length field offset.

Value: 32

CENCRC

Added in API level 21
static val CENCRC: Int

Central directory (CEN) header uncompressed file crc-32 value field offset.

Value: 16

CENDSK

Added in API level 21
static val CENDSK: Int

Central directory (CEN) header disk number start field offset.

Value: 34

CENEXT

Added in API level 21
static val CENEXT: Int

Central directory (CEN) header extra field length field offset.

Value: 30

CENFLG

Added in API level 21
static val CENFLG: Int

Central directory (CEN) header encrypt, decrypt flags field offset.

Value: 8

CENHDR

Added in API level 21
static val CENHDR: Int

Central directory (CEN) header size in bytes (including signature).

Value: 46

CENHOW

Added in API level 21
static val CENHOW: Int

Central directory (CEN) header compression method field offset.

Value: 10

CENLEN

Added in API level 21
static val CENLEN: Int

Central directory (CEN) header uncompressed size field offset.

Value: 24

CENNAM

Added in API level 21
static val CENNAM: Int

Central directory (CEN) header filename length field offset.

Value: 28

CENOFF

Added in API level 21
static val CENOFF: Int

Central directory (CEN) header LOC header offset field offset.

Value: 42

CENSIG

Added in API level 21
static val CENSIG: Long

Central directory (CEN) header signature.

Value: 33639248L

CENSIZ

Added in API level 21
static val CENSIZ: Int

Central directory (CEN) header compressed size field offset.

Value: 20

CENTIM

Added in API level 21
static val CENTIM: Int

Central directory (CEN) header modification time field offset.

Value: 12

CENVEM

Added in API level 21
static val CENVEM: Int

Central directory (CEN) header version made by field offset.

Value: 4

CENVER

Added in API level 21
static val CENVER: Int

Central directory (CEN) header version needed to extract field offset.

Value: 6

ENDCOM

Added in API level 21
static val ENDCOM: Int

End of central directory (END) header zip file comment length field offset.

Value: 20

ENDHDR

Added in API level 21
static val ENDHDR: Int

End of central directory (END) header size in bytes (including signature).

Value: 22

ENDOFF

Added in API level 21
static val ENDOFF: Int

End of central directory (END) header offset for the first CEN header field offset.

Value: 16

ENDSIG

Added in API level 21
static val ENDSIG: Long

End of central directory (END) header signature.

Value: 101010256L

ENDSIZ

Added in API level 21
static val ENDSIZ: Int

End of central directory (END) header central directory size in bytes field offset.

Value: 12

ENDSUB

Added in API level 21
static val ENDSUB: Int

End of central directory (END) header number of entries on this disk field offset.

Value: 8

ENDTOT

Added in API level 21
static val ENDTOT: Int

End of central directory (END) header total number of entries field offset.

Value: 10

EXTCRC

Added in API level 21
static val EXTCRC: Int

Extra local (EXT) header uncompressed file crc-32 value field offset.

Value: 4

EXTHDR

Added in API level 21
static val EXTHDR: Int

Extra local (EXT) header size in bytes (including signature).

Value: 16

EXTLEN

Added in API level 21
static val EXTLEN: Int

Extra local (EXT) header uncompressed size field offset.

Value: 12

EXTSIG

Added in API level 21
static val EXTSIG: Long

Extra local (EXT) header signature.

Value: 134695760L

EXTSIZ

Added in API level 21
static val EXTSIZ: Int

Extra local (EXT) header compressed size field offset.

Value: 8

LOCCRC

Added in API level 21
static val LOCCRC: Int

Local file (LOC) header uncompressed file crc-32 value field offset.

Value: 14

LOCEXT

Added in API level 21
static val LOCEXT: Int

Local file (LOC) header extra field length field offset.

Value: 28

LOCFLG

Added in API level 21
static val LOCFLG: Int

Local file (LOC) header general purpose bit flag field offset.

Value: 6

LOCHDR

Added in API level 21
static val LOCHDR: Int

Local file (LOC) header size in bytes (including signature).

Value: 30

LOCHOW

Added in API level 21
static val LOCHOW: Int

Local file (LOC) header compression method field offset.

Value: 8

LOCLEN

Added in API level 21
static val LOCLEN: Int

Local file (LOC) header uncompressed size field offset.

Value: 22

LOCNAM

Added in API level 21
static val LOCNAM: Int

Local file (LOC) header filename length field offset.

Value: 26

LOCSIG

Added in API level 21
static val LOCSIG: Long

Local file (LOC) header signature.

Value: 67324752L

LOCSIZ

Added in API level 21
static val LOCSIZ: Int

Local file (LOC) header compressed size field offset.

Value: 18

LOCTIM

Added in API level 21
static val LOCTIM: Int

Local file (LOC) header modification time field offset.

Value: 10

LOCVER

Added in API level 21
static val LOCVER: Int

Local file (LOC) header version needed to extract field offset.

Value: 4

Public constructors

JarEntry

Added in API level 1
JarEntry(name: String!)

Creates a new JarEntry for the specified JAR file entry name.

Parameters
name String!: the JAR file entry name
Exceptions
java.lang.NullPointerException if the entry name is null
java.lang.IllegalArgumentException if the entry name is longer than 0xFFFF bytes.

JarEntry

Added in API level 1
JarEntry(je: JarEntry!)

Creates a new JarEntry with fields taken from the specified JarEntry object.

Parameters
je JarEntry!: the JarEntry to copy

JarEntry

Added in API level 1
JarEntry(ze: ZipEntry!)

Creates a new JarEntry with fields taken from the specified ZipEntry object.

Parameters
ze ZipEntry!: the ZipEntry object to create the JarEntry from

Public methods

getAttributes

Added in API level 1
open fun getAttributes(): Attributes!

Returns the Manifest Attributes for this entry, or null if none.

Return
Attributes! the Manifest Attributes for this entry, or null if none
Exceptions
java.io.IOException if an I/O error has occurred

getCertificates

Added in API level 1
open fun getCertificates(): Array<Certificate!>!

Returns the Certificate objects for this entry, or null if none. This method can only be called once the JarEntry has been completely verified by reading from the entry input stream until the end of the stream has been reached. Otherwise, this method will return null.

The returned certificate array comprises all the signer certificates that were used to verify this entry. Each signer certificate is followed by its supporting certificate chain (which may be empty). Each signer certificate and its supporting certificate chain are ordered bottom-to-top (i.e., with the signer certificate first and the (root) certificate authority last).

Return
Array<Certificate!>! the Certificate objects for this entry, or null if none.

getCodeSigners

Added in API level 1
open fun getCodeSigners(): Array<CodeSigner!>!

Returns the CodeSigner objects for this entry, or null if none. This method can only be called once the JarEntry has been completely verified by reading from the entry input stream until the end of the stream has been reached. Otherwise, this method will return null.

The returned array comprises all the code signers that have signed this entry.

Return
Array<CodeSigner!>! the CodeSigner objects for this entry, or null if none.

getRealName

Added in API level 33
open fun getRealName(): String!

This method returns the same name that getName() returns.

Return
String! the real name of the JarEntry