ZipUtil

public class ZipUtil
extends Object

java.lang.Объект
com.android.tradefed.util.ZipUtil


Вспомогательный класс для операций, связанных со сжатием.

Краткое содержание

Общественные конструкторы

ZipUtil ()

Публичные методы

static void addToZip (ZipOutputStream out, File file, relativePathSegs) addToZip (ZipOutputStream out, File file, relativePathSegs)

Рекурсивно добавляет данный файл и его содержимое в ZipOutputStream.

static void applyPermission (File targetFile, CentralDirectoryInfo zipEntry)

Примените разрешение файла, настроенное в записи центрального каталога.

static void closeZip (ZipFile zipFile)

Закройте открытую ERROR(/ZipFile) , игнорируя любые исключения.

static File createZip (File dir)

Служебный метод для создания временного zip-файла, содержащего заданный каталог и все его содержимое.

static File createZip ( files, String name) createZip ( files, String name)

Служебный метод для создания временного zip-файла, содержащего заданные файлы.

static File createZip (File dir, String name)

Служебный метод для создания временного zip-файла, содержащего заданный каталог и все его содержимое.

static File createZip ( files) createZip ( files)

Служебный метод для создания временного zip-файла, содержащего заданные файлы

static void createZip (File dir, File zipFile)

Служебный метод для создания zip-файла, содержащего заданный каталог и все его содержимое.

static void createZip ( files, File zipFile) createZip ( files, File zipFile)

Служебный метод для создания zip-файла, содержащего заданные файлы

static File extractFileFromZip (ZipFile zipFile, String filePath)

Служебный метод для извлечения одного конкретного файла из zip-файла в файл tmp

static void extractZip (ZipFile zipFile, File destDir)

Служебный метод для извлечения всего содержимого zip-файла в заданный каталог

static void extractZip (ZipFile zipFile, File destDir, shouldExtract) extractZip (ZipFile zipFile, File destDir, shouldExtract)

Служебный метод для извлечения содержимого zip-файла в заданный каталог

static File extractZipToTemp (File zipFile, String nameHint)

Извлеките zip-файл во временный каталог, к которому добавлена ​​строка.

static getZipCentralDirectoryInfos (File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, boolean useZip64)

Получите список {link CentralDirectoryInfo} для файлов в zip-архиве.

static getZipCentralDirectoryInfos (File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset)

Получите список {link CentralDirectoryInfo} для файлов в zip-архиве.

static getZipCentralDirectoryInfos (File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)

Получите список {link CentralDirectoryInfo} для файлов в zip-архиве.

static getZipCentralDirectoryInfos (File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset, boolean useZip64)

Получите список {link CentralDirectoryInfo} для файлов в zip-архиве.

static void gzipFile (File file, File gzipFile)

Вспомогательный метод для создания сжатой версии одного файла.

static boolean isZipFileValid (File zipFile, boolean thorough)

Служебный метод для проверки целостности zip-файла.

static void unzipPartialZipFile (File partialZip, File targetFile, CentralDirectoryInfo zipEntry, LocalFileHeader localFileHeader, long startOffset)

Извлеките один запрошенный файл из частичного zip-файла.

static void unzipPartialZipFolder (File targetFile, CentralDirectoryInfo zipEntry)

Извлеките запрошенную папку из частичного zip-файла и примените соответствующие разрешения.

Защищенные методы

static void validateDestinationDir (File destDir, String filename)

Общественные конструкторы

ZipUtil

public ZipUtil ()

Публичные методы

добавитьToZip

public static void addToZip (ZipOutputStream out, 
                File file, 
                 relativePathSegs)

Рекурсивно добавляет данный файл и его содержимое в ZipOutputStream.

Параметры
out ZipOutputStream : ERROR(/ZipOutputStream)

file File : ERROR(/File) для добавления в поток.

relativePathSegs : относительный путь к файлу, включая разделители.

Броски
если не удалось добавить файл в zip

применить разрешение

public static void applyPermission (File targetFile, 
                CentralDirectoryInfo zipEntry)

Примените разрешение файла, настроенное в записи центрального каталога.

Параметры
targetFile File : ERROR(/File) для которой необходимо установить разрешение.

zipEntry CentralDirectoryInfo : объект CentralDirectoryInfo , содержащий разрешения для файлов.

Броски
если не удалось получить доступ к файлу.

закрытьZip

public static void closeZip (ZipFile zipFile)

Закройте открытую ERROR(/ZipFile) , игнорируя любые исключения.

Параметры
zipFile ZipFile : файл, который нужно закрыть.

создатьZip

public static File createZip (File dir)

Служебный метод для создания временного zip-файла, содержащего заданный каталог и все его содержимое.

Параметры
dir File : каталог для архивирования.

Возврат
File временный zip-файл ERROR(/File) содержащий содержимое каталога

Броски
если не удалось создать zip-файл

создатьZip

public static File createZip ( files, 
                String name)

Служебный метод для создания временного zip-файла, содержащего заданные файлы.

Параметры
files : список файлов для архивирования

name String : базовое имя zip-файла, созданного без расширения.

Возврат
File временный zip-файл ERROR(/File) содержащий содержимое каталога

Броски
если не удалось создать zip-файл

создатьZip

public static File createZip (File dir, 
                String name)

Служебный метод для создания временного zip-файла, содержащего заданный каталог и все его содержимое.

Параметры
dir File : каталог для архивирования.

name String : базовое имя zip-файла, созданного без расширения.

Возврат
File временный zip-файл ERROR(/File) содержащий содержимое каталога

Броски
если не удалось создать zip-файл

создатьZip

public static File createZip ( files)

Служебный метод для создания временного zip-файла, содержащего заданные файлы

Параметры
files : список файлов для архивирования

Возврат
File временный zip-файл ERROR(/File) содержащий содержимое каталога

Броски
если не удалось создать zip-файл

создатьZip

public static void createZip (File dir, 
                File zipFile)

Служебный метод для создания zip-файла, содержащего заданный каталог и все его содержимое.

Параметры
dir File : каталог для архивирования.

zipFile File : создаваемый zip-файл — он еще не должен существовать.

Броски
если не удалось создать zip-файл

создатьZip

public static void createZip ( files, 
                File zipFile)

Служебный метод для создания zip-файла, содержащего заданные файлы

Параметры
files : список файлов для архивирования

zipFile File : создаваемый zip-файл — он еще не должен существовать.

Броски
если не удалось создать zip-файл

извлечь файл из zip-архива

public static File extractFileFromZip (ZipFile zipFile, 
                String filePath)

Служебный метод для извлечения одного конкретного файла из zip-файла в файл tmp

Параметры
zipFile ZipFile : ERROR(/ZipFile) для извлечения.

filePath String : путь к файлу для извлечения.

Возврат
File ERROR(/File) или ноль, если не найден

Броски
если не удалось извлечь файл

извлечьZip

public static void extractZip (ZipFile zipFile, 
                File destDir)

Служебный метод для извлечения всего содержимого zip-файла в заданный каталог

Параметры
zipFile ZipFile : ERROR(/ZipFile) для извлечения.

destDir File : локальный каталог для извлечения файла.

Броски
если не удалось извлечь файл

извлечьZip

public static void extractZip (ZipFile zipFile, 
                File destDir, 
                 shouldExtract)

Служебный метод для извлечения содержимого zip-файла в заданный каталог

Параметры
zipFile ZipFile : ERROR(/ZipFile) для извлечения.

destDir File : локальный каталог для извлечения файла.

shouldExtract : предикат для определения необходимости извлечения ZipEntry

Броски
если не удалось извлечь файл

извлечьZipToTemp

public static File extractZipToTemp (File zipFile, 
                String nameHint)

Извлеките zip-файл во временный каталог, к которому добавлена ​​строка.

Параметры
zipFile File : zip-файл для извлечения.

nameHint String : префикс временного каталога.

Возврат
File ERROR(/File) указывающая на временный каталог

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo, 
                boolean useZip64)

Получите список {link CentralDirectoryInfo} для файлов в zip-архиве.

Параметры
partialZipFile File : объект ERROR(/File) частичного zip-файла, содержащего записи центрального каталога.

endCentralDirInfo EndCentralDirectoryInfo : объект EndCentralDirectoryInfo zip-файла.

useZip64 boolean : логическое значение для поддержки формата zip64 при частичной загрузке.

Возврат
Список CentralDirectoryInfo zip-файла.

Броски
Исключение IO

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo, 
                long offset)

Получите список {link CentralDirectoryInfo} для файлов в zip-архиве.

Параметры
partialZipFile File : объект ERROR(/File) частичного zip-файла, содержащего записи центрального каталога.

endCentralDirInfo EndCentralDirectoryInfo : объект EndCentralDirectoryInfo zip-файла.

offset long : смещение в частичном zip-файле, где начинается содержимое записей центрального каталога.

Возврат
Список CentralDirectoryInfo zip-файла.

Броски
Исключение IO

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo)

Получите список {link CentralDirectoryInfo} для файлов в zip-архиве.

Параметры
partialZipFile File : объект ERROR(/File) частичного zip-файла, содержащего записи центрального каталога.

endCentralDirInfo EndCentralDirectoryInfo : объект EndCentralDirectoryInfo zip-файла.

Возврат
Список CentralDirectoryInfo zip-файла.

Броски
Исключение IO

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo, 
                long offset, 
                boolean useZip64)

Получите список {link CentralDirectoryInfo} для файлов в zip-архиве.

Параметры
partialZipFile File : объект ERROR(/File) частичного zip-файла, содержащего записи центрального каталога.

endCentralDirInfo EndCentralDirectoryInfo : объект EndCentralDirectoryInfo zip-файла.

offset long : смещение в частичном zip-файле, где начинается содержимое записей центрального каталога.

useZip64 boolean : логическое значение для поддержки формата zip64 при частичной загрузке.

Возврат
Список CentralDirectoryInfo zip-файла.

Броски
Исключение IO

gzipFile

public static void gzipFile (File file, 
                File gzipFile)

Вспомогательный метод для создания сжатой версии одного файла.

Параметры
file File : исходный файл

gzipFile File : файл для размещения сжатого содержимого.

Броски
Исключение IO

isZipFileValid

public static boolean isZipFileValid (File zipFile, 
                boolean thorough)

Служебный метод для проверки целостности zip-файла.

Параметры
zipFile File : ERROR(/File) для проверки.

thorough boolean : пытаться ли полностью извлечь архив. Если false , этот метод не сможет обнаружить ошибки CRC в правильно сформированном архиве.

Возврат
boolean false , если файл кажется поврежденным; true в противном случае

Броски
если файл не может быть открыт или прочитан

разархивироватьPartialZipFile

public static void unzipPartialZipFile (File partialZip, 
                File targetFile, 
                CentralDirectoryInfo zipEntry, 
                LocalFileHeader localFileHeader, 
                long startOffset)

Извлеките один запрошенный файл из частичного zip-файла.

Этот метод предполагает, что все файлы при сжатии находятся на одном диске.

Если ERROR(/targetFile) — это каталог, будет создан пустой каталог без его содержимого.

Если ERROR(/targetFile) является символической ссылкой, символическая ссылка будет создана, но не разрешена.

Он пока не поддерживает следующие функции:

ZIP-файл размером более 4 ГБ.

ZIP64 (требуется обновление ZipLocalFileHeader для сжатого размера)

Зашифрованный zip-файл

Параметры
partialZip File : ERROR(/File) являющаяся частью zip-файла.

targetFile File : ERROR(/File) в которую нужно сохранить извлеченный файл.

zipEntry CentralDirectoryInfo : объект CentralDirectoryInfo файла, который необходимо извлечь из частичного zip-файла.

localFileHeader LocalFileHeader : объект LocalFileHeader файла, который нужно извлечь из частичного zip-файла.

startOffset long : начальное смещение извлекаемого файла.

Броски
Исключение IO

разархивироватьPartialZipFolder

public static void unzipPartialZipFolder (File targetFile, 
                CentralDirectoryInfo zipEntry)

Извлеките запрошенную папку из частичного zip-файла и примените соответствующие разрешения.

Параметры
targetFile File : ERROR(/File) в которую нужно сохранить извлеченный файл.

zipEntry CentralDirectoryInfo : объект CentralDirectoryInfo файла, который нужно извлечь из частичного zip-файла.

Броски
Исключение IO

Защищенные методы

валидироватьDestinationDir

protected static void validateDestinationDir (File destDir, 
                String filename)

Параметры
destDir File

filename String