Class ZipLong

java.lang.Object
org.apache.tools.zip.ZipLong
All Implemented Interfaces:
Cloneable

public final class ZipLong extends Object implements Cloneable
Utility class that represents a four byte integer with conversion rules for the big endian byte order of ZIP files.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final ZipLong
    Central File Header Signature
    static final ZipLong
    Data Descriptor signature
    static final ZipLong
    Local File Header Signature
  • Constructor Summary

    Constructors
    Constructor
    Description
    ZipLong(byte[] bytes)
    Create instance from bytes.
    ZipLong(byte[] bytes, int offset)
    Create instance from the four bytes starting at offset.
    ZipLong(long value)
    Create instance from a number.
  • Method Summary

    Modifier and Type
    Method
    Description
     
    boolean
    Override to make two instances with same value equal.
    byte[]
    Get value as four bytes in big endian byte order.
    static byte[]
    getBytes(long value)
    Get value as four bytes in big endian byte order.
    long
    Get value as Java long.
    static long
    getValue(byte[] bytes)
    Helper method to get the value as a Java long from a four-byte array
    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
    int
    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.
     

    Methods inherited from class java.lang.Object

    finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • CFH_SIG

      public static final ZipLong CFH_SIG
      Central File Header Signature
    • LFH_SIG

      public static final ZipLong LFH_SIG
      Local File Header Signature
    • DD_SIG

      public static final ZipLong DD_SIG
      Data Descriptor signature
  • Constructor Details

    • ZipLong

      public ZipLong(long value)
      Create instance from a number.
      Parameters:
      value - the long to store as a ZipLong
      Since:
      1.1
    • ZipLong

      public ZipLong(byte[] bytes)
      Create instance from bytes.
      Parameters:
      bytes - the bytes to store as a ZipLong
      Since:
      1.1
    • ZipLong

      public ZipLong(byte[] bytes, int offset)
      Create instance from the four bytes starting at offset.
      Parameters:
      bytes - the bytes to store as a ZipLong
      offset - the offset to start
      Since:
      1.1
  • Method Details

    • getBytes

      public byte[] getBytes()
      Get value as four bytes in big endian byte order.
      Returns:
      value as four bytes in big endian order
      Since:
      1.1
    • getValue

      public long getValue()
      Get value as Java long.
      Returns:
      value as a long
      Since:
      1.1
    • getBytes

      public static byte[] getBytes(long value)
      Get 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
    • 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 bytes
      buf - the output buffer
      offset - The offset within the output buffer of the first byte to be written. must be non-negative and no larger than buf.length-4
    • putLong

      public void putLong(byte[] buf, int offset)
    • 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 bytes
      offset - the offset to start
      Returns:
      the corresponding Java long value
    • 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
    • equals

      public boolean equals(Object o)
      Override to make two instances with same value equal.
      Overrides:
      equals in class Object
      Parameters:
      o - an object to compare
      Returns:
      true if the objects are equal
      Since:
      1.1
    • hashCode

      public int hashCode()
      Override to make two instances with same value equal.
      Overrides:
      hashCode in class Object
      Returns:
      the value stored in the ZipLong
      Since:
      1.1
    • clone

      public Object clone()
      Overrides:
      clone in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object