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

Provides stream classes for reading and writing archives using the ZIP format.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  UnixStat | Constants from stat.h on Unix systems.
  ZipArchiveEntryPredicate | A predicate to test if a #ZipArchiveEntry matches a criteria.
  ZipArchiveEntryRequestSupplier | Supplies `ZipArchiveEntryRequest`.
  ZipEncoding | An interface for encoders that do a pretty encoding of ZIP filenames.
  ZipExtraField | General format of extra field data.

- Class Summary
  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.
  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.
  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.
  StreamCompressor | Encapsulates a `Deflater` and crc calculator, handling multiple types of output streams.
  UnicodeCommentExtraField | Info-ZIP Unicode Comment Extra Field (0x6375): Stores the UTF-8 version of the file comment as stored in the central directory header.
  UnicodePathExtraField | Info-ZIP Unicode Path Extra Field (0x7075): Stores the UTF-8 version of the file name field as stored in the local header and central directory header.
  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.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.
  ZipArchiveEntry | Extension that adds better handling of extra fields and provides access to the internal and external file attributes.
  ZipArchiveEntryRequest | A Thread-safe representation of a ZipArchiveEntry that is used to add entries to parallel archives.
  ZipArchiveInputStream | Implements an input stream that can read Zip archives.
  ZipArchiveOutputStream | Reimplementation of `java.util.zip.ZipOutputStream` that does 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 big endian byte order of ZIP files.
  ZipEncodingHelper | Static helper functions for robustly encoding filenames in zip files.
  ZipFile | Replacement for `java.util.ZipFile`.
  ZipLong | Utility class that represents a four byte integer with conversion rules for the big endian byte order of ZIP files.
  ZipShort | Utility class that represents a two byte integer with conversion rules for the big endian byte order of ZIP files.
  ZipUtil | Utility class for handling DOS and Java time conversions.

- Enum Summary
  Enum | Description
  --- | ---
  PKWareExtraHeader.EncryptionAlgorithm | Encryption algorithm.
  PKWareExtraHeader.HashAlgorithm | Hash Algorithm
  Zip64Mode | The different modes `ZipArchiveOutputStream` can operate in.
  ZipMethod | List of known compression methods Many of these methods are currently not supported by commons compress

- Exception Summary
  Exception | Description
  --- | ---
  UnsupportedZipFeatureException | Exception thrown when attempting to read or write data for a zip entry that uses ZIP features not supported by this library.
  Zip64RequiredException | Exception thrown when attempting to write data that requires Zip64 support to an archive and `UseZip64` has been set to `Never`.

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

Provides stream classes for reading and writing archives using the ZIP format.

Copyright © 2016 The Apache Software Foundation. All rights reserved.