Class ZipEntry

java.lang.Object
net.sf.jazzlib.ZipEntry
All Implemented Interfaces:
Cloneable, ZipConstants

public class ZipEntry extends Object implements ZipConstants, Cloneable
This class represents a member of a zip archive. ZipFile and ZipInputStream will give you instances of this class as information about the members in an archive. On the other hand ZipOutputStream needs an instance of this class to create a new member.
  • Field Details

    • KNOWN_SIZE

      private static int KNOWN_SIZE
    • KNOWN_CSIZE

      private static int KNOWN_CSIZE
    • KNOWN_CRC

      private static int KNOWN_CRC
    • KNOWN_TIME

      private static int KNOWN_TIME
    • cal

      private static Calendar cal
    • name

      private final String name
    • size

      private int size
    • compressedSize

      private int compressedSize
    • crc

      private int crc
    • dostime

      private int dostime
    • known

      private short known
    • method

      private short method
    • extra

      private byte[] extra
    • comment

      private String comment
    • flags

      int flags
    • offset

      int offset
    • STORED

      public static final int STORED
      Compression method. This method doesn't compress at all.
      See Also:
    • DEFLATED

      public static final int DEFLATED
      Compression method. This method uses the Deflater.
      See Also:
  • Constructor Details

    • ZipEntry

      public ZipEntry(String name)
      Creates a zip entry with the given name.
      Parameters:
      name - the name. May include directory components separated by '/'.
      Throws:
      NullPointerException - when name is null.
      IllegalArgumentException - when name is bigger then 65535 chars.
    • ZipEntry

      public ZipEntry(ZipEntry e)
      Creates a copy of the given zip entry.
      Parameters:
      e - the entry to copy.
  • Method Details

    • setDOSTime

      final void setDOSTime(int dostime)
    • getDOSTime

      final int getDOSTime()
    • clone

      public Object clone()
      Clones the entry.
      Overrides:
      clone in class Object
    • getName

      public String getName()
      Returns the entry name. The path components in the entry are always separated by slashes ('/').
    • setTime

      public void setTime(long time)
      Sets the time of last modification of the entry.
    • getTime

      public long getTime()
      Gets the time of last modification of the entry.
      Returns:
      the time of last modification of the entry, or -1 if unknown.
    • getCalendar

      private static Calendar getCalendar()
    • setSize

      public void setSize(long size)
      Sets the size of the uncompressed data.
      Throws:
      IllegalArgumentException - if size is not in 0..0xffffffffL
    • getSize

      public long getSize()
      Gets the size of the uncompressed data.
      Returns:
      the size or -1 if unknown.
    • setCompressedSize

      public void setCompressedSize(long csize)
      Sets the size of the compressed data.
      Throws:
      IllegalArgumentException - if size is not in 0..0xffffffffL
    • getCompressedSize

      public long getCompressedSize()
      Gets the size of the compressed data.
      Returns:
      the size or -1 if unknown.
    • setCrc

      public void setCrc(long crc)
      Sets the crc of the uncompressed data.
      Throws:
      IllegalArgumentException - if crc is not in 0..0xffffffffL
    • getCrc

      public long getCrc()
      Gets the crc of the uncompressed data.
      Returns:
      the crc or -1 if unknown.
    • setMethod

      public void setMethod(int method)
      Sets the compression method. Only DEFLATED and STORED are supported.
      Throws:
      IllegalArgumentException - if method is not supported.
      See Also:
    • getMethod

      public int getMethod()
      Gets the compression method.
      Returns:
      the compression method or -1 if unknown.
    • setExtra

      public void setExtra(byte[] extra)
      Sets the extra data.
      Throws:
      IllegalArgumentException - if extra is longer than 0xffff bytes.
    • getExtra

      public byte[] getExtra()
      Gets the extra data.
      Returns:
      the extra data or null if not set.
    • setComment

      public void setComment(String comment)
      Sets the entry comment.
      Throws:
      IllegalArgumentException - if comment is longer than 0xffff.
    • getComment

      public String getComment()
      Gets the comment.
      Returns:
      the comment or null if not set.
    • isDirectory

      public boolean isDirectory()
      Gets true, if the entry is a directory. This is solely determined by the name, a trailing slash '/' marks a directory.
    • toString

      public String toString()
      Gets the string representation of this ZipEntry. This is just the name as returned by getName().
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Gets the hashCode of this ZipEntry. This is just the hashCode of the name. Note that the equals method isn't changed, though.
      Overrides:
      hashCode in class Object