org.apache.commons.compress.archivers.zip

## Enum Zip64Mode

- java.lang.Object
- - java.lang.Enum<Zip64Mode>
  - - org.apache.commons.compress.archivers.zip.Zip64Mode

- All Implemented Interfaces:
    Serializable, Comparable<Zip64Mode>

      public enum Zip64Mode
      extends Enum<Zip64Mode>

  The different modes `ZipArchiveOutputStream` can operate in.
  Since:
    1.3
  See Also:
    `ZipArchiveOutputStream.setUseZip64(org.apache.commons.compress.archivers.zip.Zip64Mode)`

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `Always` Use Zip64 extensions for all entries, even if it is clear it is not required.
    `AlwaysWithCompatibility` Always use Zip64 extensions for LFH and central directory as `Always` did, and at the meantime encode the relative offset of LFH and disk number start as needed in CFH as `AsNeeded` did.
    `AsNeeded` Use Zip64 extensions for all entries where they are required, don't use them for entries that clearly don't require them.
    `Never` Don't use Zip64 extensions for any entries.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static Zip64Mode` | `valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static Zip64Mode[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### Always

          public static final Zip64Mode Always

      Use Zip64 extensions for all entries, even if it is clear it is not required.

    - #### Never

          public static final Zip64Mode Never

      Don't use Zip64 extensions for any entries.

      This will cause a `Zip64RequiredException` to be thrown if `ZipArchiveOutputStream` detects it needs Zip64 support.

    - #### AsNeeded

          public static final Zip64Mode AsNeeded

      Use Zip64 extensions for all entries where they are required, don't use them for entries that clearly don't require them.

    - #### AlwaysWithCompatibility

          public static final Zip64Mode AlwaysWithCompatibility

      Always use Zip64 extensions for LFH and central directory as `Always` did, and at the meantime encode the relative offset of LFH and disk number start as needed in CFH as `AsNeeded` did.

      This is a compromise for some libraries including 7z and Expand-Archive Powershell utility(and likely Excel).

  - ### Method Detail

    - #### values

          public static Zip64Mode[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (Zip64Mode c : Zip64Mode.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static Zip64Mode valueOf(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

Copyright © 2002–2022 The Apache Software Foundation. All rights reserved.