Top Description Interfaces Classes Enums
[default module]

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


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

Interface Summary

Modifier and TypeInterface and Description
public interface
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.

public interface
ExtraFieldParsingBehavior

Controls details of parsing ZIP extra fields.

public interface
UnixStat

Constants from stat.h on Unix systems.

public interface
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.

public interface
ZipArchiveEntryPredicate

A predicate to test if a #ZipArchiveEntry matches a criteria.

public interface
public interface
ZipEncoding

An interface for encoders that do a pretty encoding of ZIP file names.

public interface
ZipExtraField

General format of extra field data.

Class Summary

Modifier and TypeClass and Description
public abstract class
AbstractUnicodeExtraField

A common base class for Unicode extra information extra fields.

public class
AsiExtraField

Adds Unix file permission and UID/GID fields as well as symbolic link handling.

pack-priv class
BinaryTree

Binary tree of positive values.

pack-priv class
BitStream

Iterates over the bits of an InputStream.

pack-priv class
CircularBuffer

Circular byte buffer.

public class
pack-priv class
ExplodingInputStream

The implode compression method was added to PKZIP 1.01 released in 1989.

public class
pack-priv class
public class
GeneralPurposeBit

Parser/encoder for the "general purpose bit" field in ZIP's local file and central directory headers.

pack-priv class
InflaterInputStreamWithStatistics

Helper class to provide statistics

public class
JarMarker

If this extra field is added as the very first extra field of the archive, Solaris will consider it an executable jar file.

pack-priv class
NioZipEncoding

A ZipEncoding, which uses a Charset to encode names.

public class
ParallelScatterZipCreator

Creates a ZIP in parallel by using multiple threadlocal ScatterZipOutputStream instances.

public abstract class
PKWareExtraHeader

Base class for all PKWare strong crypto extra headers.

pack-priv abstract class
RandomAccessOutputStream

Abstraction over OutputStream which also allows random access writes.

public class
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.

public class
ScatterStatistics

Provides information about a scatter compression run.

public class
ScatterZipOutputStream

A ZIP output stream that is optimized for multi-threaded scatter/gather construction of ZIP files.

pack-priv class
public abstract class
StreamCompressor

Encapsulates a Deflater and crc calculator, handling multiple types of output streams.

public class
UnicodeCommentExtraField

Info-ZIP Unicode Comment Extra Field (0x6375):

Stores the UTF-8 version of the file comment as stored in the central directory header.

public class
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.

public class
UnparseableExtraFieldData

Wrapper for extra field data that doesn't conform to the recommended format of header-tag + size + data.

public class
UnrecognizedExtraField

Simple placeholder for all those extra fields we don't want to deal with.

pack-priv class
UnshrinkingInputStream

Input stream that decompresses ZIP method 1 (unshrinking).

public class
UnsupportedZipFeatureException

Exception thrown when attempting to read or write data for a ZIP entry that uses ZIP features not supported by this library.

public class
X000A_NTFS

NTFS extra field that was thought to store various attributes but in reality only stores timestamps.

public class
X0014_X509Certificates

PKCS#7 Store for X.509 Certificates (0x0014).

public class
X0015_CertificateIdForFile

X.509 Certificate ID and Signature for individual file (0x0015).

public class
X0016_CertificateIdForCentralDirectory

X.509 Certificate ID and Signature for central directory (0x0016).

public class
X0017_StrongEncryptionHeader

Strong Encryption Header (0x0017).

public class
X0019_EncryptionRecipientCertificateList

PKCS#7 Encryption Recipient Certificate List (0x0019).

public class
X5455_ExtendedTimestamp

An extra field that stores additional file and directory timestamp data for ZIP entries.

public class
X7875_NewUnix

An extra field that stores UNIX UID/GID data (owner & group ownership) for a given ZIP entry.

public class
Zip64ExtendedInformationExtraField

Holds size and other extended information for entries that use Zip64 features.

public class
Zip64RequiredException

Exception thrown when attempting to write data that requires Zip64 support to an archive and UseZip64 has been set to Never.

public class
ZipArchiveEntry

Extension that adds better handling of extra fields and provides access to the internal and external file attributes.

public class
ZipArchiveEntryRequest

A Thread-safe representation of a ZipArchiveEntry that is used to add entries to parallel archives.

public class
ZipArchiveInputStream

Implements an input stream that can read Zip archives.

public class
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.

pack-priv class
ZipConstants

Various constants used throughout the package.

public class
ZipEightByteInteger

Utility class that represents an eight byte integer with conversion rules for the little-endian byte order of ZIP files.

public abstract class
ZipEncodingHelper

Static helper functions for robustly encoding file names in ZIP files.

public class
pack-priv class
ZipIoUtil

IO utilities for Zip operations.

public class
ZipLong

Utility class that represents a four byte integer with conversion rules for the little-endian byte order of ZIP files.

public class
ZipShort

Utility class that represents a two byte integer with conversion rules for the little-endian byte order of ZIP files.

pack-priv class
ZipSplitOutputStream

Used internally by ZipArchiveOutputStream when creating a split archive.

public class
ZipSplitReadOnlySeekableByteChannel

MultiReadOnlySeekableByteChannel that knows what a split ZIP archive should look like.

public abstract class
ZipUtil

Utility class for handling DOS and Java time conversions.

Enum Summary

Modifier and TypeEnum and Description
public enum
Zip64Mode

The different modes ZipArchiveOutputStream can operate in.

public enum
ZipMethod

List of known compression methods Many of these methods are currently not supported by commons compress