Class ZipLong
java.lang.Object
org.apache.commons.compress.archivers.zip.ZipLong
- All Implemented Interfaces:
Serializable
,Cloneable
Utility class that represents a four byte integer with conversion rules for the little-endian byte order of ZIP files.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ZipLong
Archive extra data record signature.static final ZipLong
Central File Header Signaturestatic final ZipLong
Data Descriptor signature.static final ZipLong
Local File Header Signatureprivate static final long
static final ZipLong
Marks ZIP archives that were supposed to be split or spanned but only needed a single segment in then end (so are actually neither split nor spanned).private final long
(package private) static final ZipLong
Value stored in size and similar fields if ZIP64 extensions are used. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionclone()
boolean
Override to make two instances with same value equal.byte[]
getBytes()
Gets value as four bytes in big-endian byte order.static byte[]
getBytes
(long value) Gets value as four bytes in big-endian byte order.int
Gets value as a (signed) Java intlong
getValue()
Gets value as Java long.static long
getValue
(byte[] bytes) Helper method to get the value as a Java long from a four-byte arraystatic long
getValue
(byte[] bytes, int offset) Helper method to get the value as a Java long from four bytes starting at given array offsetint
hashCode()
Override to make two instances with same value equal.void
putLong
(byte[] buf, int offset) static void
putLong
(long value, byte[] buf, int offset) put the value as four bytes in big-endian byte order.toString()
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
CFH_SIG
Central File Header Signature -
LFH_SIG
Local File Header Signature -
DD_SIG
Data Descriptor signature.Actually, PKWARE uses this as marker for split/spanned archives and other archivers have started to use it as Data Descriptor signature (as well).
- Since:
- 1.1
-
ZIP64_MAGIC
Value stored in size and similar fields if ZIP64 extensions are used.- Since:
- 1.3
-
SINGLE_SEGMENT_SPLIT_MARKER
Marks ZIP archives that were supposed to be split or spanned but only needed a single segment in then end (so are actually neither split nor spanned).This is the "PK00" prefix found in some archives.
- Since:
- 1.5
-
AED_SIG
Archive extra data record signature.- Since:
- 1.5
-
value
private final long value
-
-
Constructor Details
-
ZipLong
public ZipLong(byte[] bytes) Constructs a new instance from bytes.- Parameters:
bytes
- the bytes to store as a ZipLong
-
ZipLong
public ZipLong(byte[] bytes, int offset) Creates instance from the four bytes starting at offset.- Parameters:
bytes
- the bytes to store as a ZipLongoffset
- the offset to start
-
ZipLong
public ZipLong(int value) create instance from a Java int.- Parameters:
value
- the int to store as a ZipLong- Since:
- 1.15
-
ZipLong
public ZipLong(long value) Creates instance from a number.- Parameters:
value
- the long to store as a ZipLong
-
-
Method Details
-
getBytes
public static byte[] getBytes(long value) Gets value as four bytes in big-endian byte order.- Parameters:
value
- the value to convert- Returns:
- value as four bytes in big-endian byte order
-
getValue
public static long getValue(byte[] bytes) Helper method to get the value as a Java long from a four-byte array- Parameters:
bytes
- the array of bytes- Returns:
- the corresponding Java long value
-
getValue
public static long getValue(byte[] bytes, int offset) Helper method to get the value as a Java long from four bytes starting at given array offset- Parameters:
bytes
- the array of bytesoffset
- the offset to start- Returns:
- the corresponding Java long value
-
putLong
public static void putLong(long value, byte[] buf, int offset) put the value as four bytes in big-endian byte order.- Parameters:
value
- the Java long to convert to bytesbuf
- the output bufferoffset
- The offset within the output buffer of the first byte to be written. must be non-negative and no larger thanbuf.length-4
-
clone
-
equals
Override to make two instances with same value equal. -
getBytes
public byte[] getBytes()Gets value as four bytes in big-endian byte order.- Returns:
- value as four bytes in big-endian order
-
getIntValue
public int getIntValue()Gets value as a (signed) Java int- Returns:
- value as int
- Since:
- 1.15
-
getValue
public long getValue()Gets value as Java long.- Returns:
- value as a long
-
hashCode
public int hashCode()Override to make two instances with same value equal. -
putLong
public void putLong(byte[] buf, int offset) -
toString
-