Java Zip File Check isZippedFile(File file)

Here you can find the source of isZippedFile(File file)

Description

Returns true if the input file is a zipped file.

License

Open Source License

Parameter

Parameter Description
file a parameter

Return

true if the file is a zipped file, false otherwise

Declaration

public static boolean isZippedFile(File file) 

Method Source Code


//package com.java2s;

import java.io.File;

public class Main {
    /**/*from   w w  w. j  av a  2  s . co m*/
     * Suffix signifying a gzipped file
     */
    private static final String gz_suffix = ".gz";
    /**
     * Suffix signifying a gzipped tarball file
     */
    private static final String tgz_suffix = ".tgz";
    /**
     * suffix signifying a zip file
     */
    private static final String zip_suffix = ".zip";
    /**
     * suffix signifying a bzipped file
     */
    private static final String bzip_suffix = ".bz2";
    /**
     * suffix signifying a .Z file
     */
    private static final String z_suffix = ".Z";

    /**
     * Returns true if the input file is a zipped file. Determination is made by examining the file
     * suffix.
     * 
     * @param file
     * @return true if the file is a zipped file, false otherwise
     */
    public static boolean isZippedFile(File file) {
        return isGzipFile(file) || isZipFile(file) || isBZipFile(file) || isUnixCompressFile(file);
    }

    /**
     * Returns true if the input file is a gzip file. Determination is made by examining the file
     * suffix.
     * 
     * @param file
     * @return true if the file is a gzip file, false otherwise
     */
    public static boolean isGzipFile(File file) {
        return hasCaseInsensitiveSuffix(file, gz_suffix) || hasCaseInsensitiveSuffix(file, tgz_suffix);
    }

    /**
     * Returns true if the input file is a zip file. Determination is made by examining the file
     * suffix.
     * 
     * @param file
     * @return true if the file is a zip file, false otherwise
     */
    private static boolean isZipFile(File file) {
        return hasCaseInsensitiveSuffix(file, zip_suffix);
    }

    /**
     * Returns true if the input file is a bzip file. Determination is made by examining the file
     * suffix.
     * 
     * @param file
     * @return true if the file is a bzip file, false otherwise
     */
    private static boolean isBZipFile(File file) {
        return hasCaseInsensitiveSuffix(file, bzip_suffix);
    }

    /**
     * Returns true if the input file is a .Z file. Determination is made by examining the file
     * suffix.
     * 
     * @param file
     * @return true if the file is a .Z file, false otherwise
     */
    private static boolean isUnixCompressFile(File file) {
        return hasCaseInsensitiveSuffix(file, z_suffix);
    }

    /**
     * Matches the file suffix to the input file in a case-insensitive manner
     * 
     * @param file
     * @param fileSuffix
     * @return true if the input file has the specified file suffix regardless of upper/lower case
     */
    private static boolean hasCaseInsensitiveSuffix(File file, String fileSuffix) {
        return file.getName().endsWith(fileSuffix.toLowerCase())
                || file.getName().endsWith(fileSuffix.toUpperCase());
    }
}

Related

  1. isZipped(File f)
  2. isZipped(File file)
  3. isZipped(final File file)
  4. isZipped(InputStream inputStream)
  5. isZipped(String name)
  6. isZipStream(ByteArrayInputStream input)
  7. isZipStream(InputStream in)
  8. isZipValid(File file)
  9. isZipValid(final File zip)