# Package org.apache.commons.compress.archivers.zip

package org.apache.commons.compress.archivers.zip
Provides stream classes for reading and writing archives using the ZIP format.

- Related Packages
  Package
  Description
  org.apache.commons.compress.archivers
  Provides a unified API and factories for dealing with archives in different formats.
- Class
  Description
  AbstractUnicodeExtraField
  A common base class for Unicode extra information extra fields.
  AsiExtraField
  Adds Unix file permission and UID/GID fields as well as symbolic link handling.
  CharsetAccessor
  An interface added to allow access to the character set associated with an `NioZipEncoding`, without requiring a new method to be added to `ZipEncoding`.
  DefaultBackingStoreSupplier
  Implements `ScatterGatherBackingStoreSupplier` using a temporary folder.
  ExtraFieldParsingBehavior
  Controls details of parsing ZIP extra fields.
  ExtraFieldUtils
  `ZipExtraField` related methods.
  ExtraFieldUtils.UnparseableExtraField
  "enum" for the possible actions to take if the extra field cannot be parsed.
  GeneralPurposeBit
  Parser/encoder for the "general purpose bit" field in ZIP's local file and central directory headers.
  JarMarker
  If this extra field is added as the very first extra field of the archive, Solaris will consider it an executable jar file.
  ParallelScatterZipCreator
  Creates a ZIP in parallel by using multiple threadlocal `ScatterZipOutputStream` instances.
  PKWareExtraHeader
  Base class for all PKWare strong crypto extra headers.
  PKWareExtraHeader.EncryptionAlgorithm
  Encryption algorithm.
  PKWareExtraHeader.HashAlgorithm
  Hash Algorithm
  ResourceAlignmentExtraField
  An extra field who's sole purpose is to align and pad the local file header so that the entry's data starts at a certain position.
  ScatterStatistics
  Provides information about a scatter compression run.
  ScatterZipOutputStream
  A ZIP output stream that is optimized for multi-threaded scatter/gather construction of ZIP files.
  ScatterZipOutputStream.ZipEntryWriter
  StreamCompressor
  Encapsulates a `Deflater` and crc calculator, handling multiple types of output streams.
  UnicodeCommentExtraField
  Info-ZIP Unicode Comment Extra Field (0x6375):
  UnicodePathExtraField
  Info-ZIP Unicode Path Extra Field (0x7075):
  UnixStat
  Constants from stat.h on Unix systems.
  UnparseableExtraFieldBehavior
  Handles extra field data that doesn't follow the recommended pattern for extra fields with a two-byte key and a two-byte length.
  UnparseableExtraFieldData
  Wrapper for extra field data that doesn't conform to the recommended format of header-tag + size + data.
  UnrecognizedExtraField
  Simple placeholder for all those extra fields we don't want to deal with.
  UnsupportedZipFeatureException
  Exception thrown when attempting to read or write data for a ZIP entry that uses ZIP features not supported by this library.
  UnsupportedZipFeatureException.Feature
  ZIP Features that may or may not be supported.
  X000A_NTFS
  NTFS extra field that was thought to store various attributes but in reality only stores timestamps.
  X0014_X509Certificates
  PKCS#7 Store for X.509 Certificates (0x0014).
  X0015_CertificateIdForFile
  X.509 Certificate ID and Signature for individual file (0x0015).
  X0016_CertificateIdForCentralDirectory
  X.509 Certificate ID and Signature for central directory (0x0016).
  X0017_StrongEncryptionHeader
  Strong Encryption Header (0x0017).
  X0019_EncryptionRecipientCertificateList
  PKCS#7 Encryption Recipient Certificate List (0x0019).
  X5455_ExtendedTimestamp
  An extra field that stores additional file and directory timestamp data for ZIP entries.
  X7875_NewUnix
  An extra field that stores UNIX UID/GID data (owner & group ownership) for a given ZIP entry.
  Zip64ExtendedInformationExtraField
  Holds size and other extended information for entries that use Zip64 features.
  Zip64Mode
  The different modes `ZipArchiveOutputStream` can operate in.
  Zip64RequiredException
  Exception thrown when attempting to write data that requires Zip64 support to an archive and `UseZip64` has been set to `Never`.
  ZipArchiveEntry
  Extension that adds better handling of extra fields and provides access to the internal and external file attributes.
  ZipArchiveEntry.CommentSource
  Indicates how the comment of this entry has been determined.
  ZipArchiveEntry.ExtraFieldParsingMode
  How to try to parse the extra fields.
  ZipArchiveEntry.NameSource
  Indicates how the name of this entry has been determined.
  ZipArchiveEntryPredicate
  A predicate to test if a #ZipArchiveEntry matches a criteria.
  ZipArchiveEntryRequest
  A Thread-safe representation of a ZipArchiveEntry that is used to add entries to parallel archives.
  ZipArchiveEntryRequestSupplier
  Supplies `ZipArchiveEntryRequest`.
  ZipArchiveInputStream
  Implements an input stream that can read Zip archives.
  ZipArchiveOutputStream
  Reimplementation of `java.util.zip.ZipOutputStream` to handle the extended functionality of this package, especially internal/external file attributes and extra fields with different layouts for local file data and central directory entries.
  ZipArchiveOutputStream.UnicodeExtraFieldPolicy
  enum that represents the possible policies for creating Unicode extra fields.
  ZipEightByteInteger
  Utility class that represents an eight byte integer with conversion rules for the little-endian byte order of ZIP files.
  ZipEncoding
  An interface for encoders that do a pretty encoding of ZIP file names.
  ZipEncodingHelper
  Static helper functions for robustly encoding file names in ZIP files.
  ZipExtraField
  General format of extra field data.
  ZipFile
  Replacement for `ZipFile`.
  ZipFile.Builder
  Builds new `ZipFile` instances.
  ZipLong
  Utility class that represents a four byte integer with conversion rules for the little-endian byte order of ZIP files.
  ZipMethod
  List of known compression methods Many of these methods are currently not supported by commons compress
  ZipShort
  Utility class that represents a two byte integer with conversion rules for the little-endian byte order of ZIP files.
  ZipSplitReadOnlySeekableByteChannel
  `MultiReadOnlySeekableByteChannel` that knows what a split ZIP archive should look like.
  ZipUtil
  Utility class for handling DOS and Java time conversions.