ZipUtil

public class ZipUtil
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.ZipUtil


A helper class for compression-related operations

Summary

Public constructors

ZipUtil()

Public methods

static void addToZip(ZipOutputStream out, File file, List<String> relativePathSegs)

Recursively adds given file and its contents to ZipOutputStream

static void closeZip(ZipFile zipFile)

Close an open ZipFile, ignoring any exceptions.

static File createZip(File dir, String name)

Utility method to create a temporary zip file containing the given directory and all its contents.

static File createZip(File dir)

Utility method to create a temporary zip file containing the given directory and all its contents.

static File createZip(List<File> files)

Utility method to create a temporary zip file containing the given files

static File createZip(List<File> files, String name)

Utility method to create a temporary zip file containing the given files.

static void createZip(List<File> files, File zipFile)

Utility method to create a zip file containing the given files

static void createZip(File dir, File zipFile)

Utility method to create a zip file containing the given directory and all its contents.

static File extractFileFromZip(ZipFile zipFile, String filePath)

Utility method to extract one specific file from zip file into a tmp file

static void extractZip(ZipFile zipFile, File destDir)

Utility method to extract entire contents of zip file into given directory

static File extractZipToTemp(File zipFile, String nameHint)

Extract a zip file to a temp directory prepended with a string

static void gzipFile(File file, File gzipFile)

Helper method to create a gzipped version of a single file.

static boolean isZipFileValid(File zipFile, boolean thorough)

Utility method to verify that a zip file is not corrupt.

Public constructors

ZipUtil

ZipUtil ()

Public methods

addToZip

void addToZip (ZipOutputStream out, 
                File file, 
                List<String> relativePathSegs)

Recursively adds given file and its contents to ZipOutputStream

Parameters
out ZipOutputStream: the ZipOutputStream
file File: the File to add to the stream
relativePathSegs List: the relative path of file, including separators
Throws
IOException if failed to add file to zip

closeZip

void closeZip (ZipFile zipFile)

Close an open ZipFile, ignoring any exceptions.

Parameters
zipFile ZipFile: the file to close

createZip

File createZip (File dir, 
                String name)

Utility method to create a temporary zip file containing the given directory and all its contents.

Parameters
dir File: the directory to zip
name String: the base name of the zip file created without the extension.
Returns
File a temporary zip File containing directory contents
Throws
IOException if failed to create zip file

createZip

File createZip (File dir)

Utility method to create a temporary zip file containing the given directory and all its contents.

Parameters
dir File: the directory to zip
Returns
File a temporary zip File containing directory contents
Throws
IOException if failed to create zip file

createZip

File createZip (List<File> files)

Utility method to create a temporary zip file containing the given files

Parameters
files List: list of files to zip
Returns
File a temporary zip File containing directory contents
Throws
IOException if failed to create zip file

createZip

File createZip (List<File> files, 
                String name)

Utility method to create a temporary zip file containing the given files.

Parameters
files List: list of files to zip
name String: the base name of the zip file created without the extension.
Returns
File a temporary zip File containing directory contents
Throws
IOException if failed to create zip file

createZip

void createZip (List<File> files, 
                File zipFile)

Utility method to create a zip file containing the given files

Parameters
files List: list of files to zip
zipFile File: the zip file to create - it should not already exist
Throws
IOException if failed to create zip file

createZip

void createZip (File dir, 
                File zipFile)

Utility method to create a zip file containing the given directory and all its contents.

Parameters
dir File: the directory to zip
zipFile File: the zip file to create - it should not already exist
Throws
IOException if failed to create zip file

extractFileFromZip

File extractFileFromZip (ZipFile zipFile, 
                String filePath)

Utility method to extract one specific file from zip file into a tmp file

Parameters
zipFile ZipFile: the ZipFile to extract
filePath String: the filePath of to extract
Returns
File the File or null if not found
Throws
IOException if failed to extract file

extractZip

void extractZip (ZipFile zipFile, 
                File destDir)

Utility method to extract entire contents of zip file into given directory

Parameters
zipFile ZipFile: the ZipFile to extract
destDir File: the local dir to extract file to
Throws
IOException if failed to extract file

extractZipToTemp

File extractZipToTemp (File zipFile, 
                String nameHint)

Extract a zip file to a temp directory prepended with a string

Parameters
zipFile File: the zip file to extract
nameHint String: a prefix for the temp directory
Returns
File a File pointing to the temp directory
Throws
IOException
ZipException

gzipFile

void gzipFile (File file, 
                File gzipFile)

Helper method to create a gzipped version of a single file.

Parameters
file File: the original file
gzipFile File: the file to place compressed contents in
Throws
IOException

isZipFileValid

boolean isZipFileValid (File zipFile, 
                boolean thorough)

Utility method to verify that a zip file is not corrupt.

Parameters
zipFile File: the File to check
thorough boolean: Whether to attempt to fully extract the archive. If false, this method will fail to detect CRC errors in a well-formed archive.
Returns
boolean false if the file appears to be corrupt; true otherwise
Throws
IOException if the file could not be opened or read