org.apache.commons.compress.compressors

## Class FileNameUtil

- java.lang.Object
- - org.apache.commons.compress.compressors.FileNameUtil

-     public class FileNameUtil
      extends Object

  File name mapping code for the compression formats.
  Since:
    1.4
  This class is thread-safe

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `FileNameUtil(Map<String,String> uncompressSuffix, String defaultExtension)` sets up the utility with a map of known compressed to uncompressed suffix mappings and the default extension of the format.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getCompressedFilename(String fileName)` Maps the given file name to the name that the file should have after compression.
    `String` | `getUncompressedFilename(String fileName)` Maps the given name of a compressed file to the name that the file should have after uncompression.
    `boolean` | `isCompressedFilename(String fileName)` Detects common format suffixes in the given file name.

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### FileNameUtil

          public FileNameUtil(Map<String,String> uncompressSuffix,
                              String defaultExtension)

      sets up the utility with a map of known compressed to uncompressed suffix mappings and the default extension of the format.
      Parameters:
        `uncompressSuffix` - Map from common file name suffixes of compressed files to the corresponding suffixes of uncompressed files. For example: from ".tgz" to ".tar". This map also contains format-specific suffixes like ".gz" and "-z". These suffixes are mapped to the empty string, as they should simply be removed from the file name when the file is uncompressed.
        `defaultExtension` - the format's default extension like ".gz"

  - ### Method Detail

    - #### getCompressedFilename

          public String getCompressedFilename(String fileName)

      Maps the given file name to the name that the file should have after compression. Common file types with custom suffixes for compressed versions are automatically detected and correctly mapped. For example the name "package.tar" is mapped to "package.tgz". If no custom mapping is applicable, then the default ".gz" suffix is appended to the file name.
      Parameters:
        `fileName` - name of a file
      Returns:
        name of the corresponding compressed file

    - #### getUncompressedFilename

          public String getUncompressedFilename(String fileName)

      Maps the given name of a compressed file to the name that the file should have after uncompression. Commonly used file type specific suffixes like ".tgz" or ".svgz" are automatically detected and correctly mapped. For example the name "package.tgz" is mapped to "package.tar". And any file names with the generic ".gz" suffix (or any other generic gzip suffix) is mapped to a name without that suffix. If no format suffix is detected, then the file name is returned unmapped.
      Parameters:
        `fileName` - name of a file
      Returns:
        name of the corresponding uncompressed file

    - #### isCompressedFilename

          public boolean isCompressedFilename(String fileName)

      Detects common format suffixes in the given file name.
      Parameters:
        `fileName` - name of a file
      Returns:
        `true` if the file name has a common format suffix, `false` otherwise

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