All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.schlichtherle.util.zip.package.html Maven / Gradle / Ivy





    
    
        

A drop-in replacement for the classes in the package {@link java.util.zip} which read and write ZIP files.

The classes in this package read and write ZIP files according to a subset of PKWARE's ZIP File Format Specification , Version 6.3.2 from September 28, 2007. The subset has been selected in order to achieve the following objectives:

  • Full interoperability with ZIP files read or written by the package {@link java.util.zip} of Sun's Java SE 6 implementation.
  • Support for arbitrary character sets, in particular IBM Code Page 437 (alias IBM PC) for PKZIP compatibility and UTF-8 for Java Archive (JAR) compatibility. Note that using any other character set except CP437 or UTF-8 is strongly discouraged because it will result in interoperability issues with third party tools, especially when interchanging archive files between different locales!
  • Support for reading and writing ZIP64 extensions with the following restrictions:
    1. The maximum file size is {@link java.lang.Long#MAX_VALUE}.
    2. The maximum number of entries in the Central Directory is {@link java.lang.Integer#MAX_VALUE}.
    3. The offsets in ZIP64 files must respect a preamble if present, i.e. they must by exact. This is in contrast to ZIP32 files where the offsets do not need to respect a preamble if present. Preambles are primarily used to contain self extracting (SFX) executable code.
  • {@link de.schlichtherle.util.zip.ZipFile} supports reading archive data from the random access read only interface {@link de.schlichtherle.io.rof.ReadOnlyFile}, which allows to read archive data from complex data sources such as RAES encrypted ZIP files directly without the need to decrypt these to a temporary file first (see package {@link de.schlichtherle.crypto.io.raes}).




© 2015 - 2025 Weber Informatics LLC | Privacy Policy