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-файла и примените соответствующие разрешения. |
Общественные конструкторы
ZipUtil
public ZipUtil ()
Публичные методы
добавитьToZip
public static void addToZip (ZipOutputStream out,
File file,
relativePathSegs)
Рекурсивно добавляет данный файл и его содержимое в ZipOutputStream.
Броски |
---|
| если не удалось добавить файл в 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-файл |
public static File extractFileFromZip (ZipFile zipFile,
String filePath)
Служебный метод для извлечения одного конкретного файла из zip-файла в файл tmp
Параметры |
---|
zipFile | ZipFile : ERROR(/ZipFile) для извлечения. |
filePath | String : путь к файлу для извлечения. |
Броски |
---|
| если не удалось извлечь файл |
public static void extractZip (ZipFile zipFile,
File destDir)
Служебный метод для извлечения всего содержимого zip-файла в заданный каталог
Параметры |
---|
zipFile | ZipFile : ERROR(/ZipFile) для извлечения. |
destDir | File : локальный каталог для извлечения файла. |
Броски |
---|
| если не удалось извлечь файл |
public static void extractZip (ZipFile zipFile,
File destDir,
shouldExtract)
Служебный метод для извлечения содержимого zip-файла в заданный каталог
Параметры |
---|
zipFile | ZipFile : ERROR(/ZipFile) для извлечения. |
destDir | File : локальный каталог для извлечения файла. |
shouldExtract | : предикат для определения необходимости извлечения ZipEntry |
Броски |
---|
| если не удалось извлечь файл |
public static File extractZipToTemp (File zipFile,
String nameHint)
Извлеките zip-файл во временный каталог, к которому добавлена строка.
Параметры |
---|
zipFile | File : zip-файл для извлечения. |
nameHint | String : префикс временного каталога. |
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 при частичной загрузке. |
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-файле, где начинается содержимое записей центрального каталога. |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo)
Получите список {link CentralDirectoryInfo} для файлов в zip-файле.
Параметры |
---|
partialZipFile | File : объект ERROR(/File) частичного zip-файла, содержащего записи центрального каталога. |
endCentralDirInfo | EndCentralDirectoryInfo : объект EndCentralDirectoryInfo zip-файла. |
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 при частичной загрузке. |
gzipFile
public static void gzipFile (File file,
File gzipFile)
Вспомогательный метод для создания сжатой версии одного файла.
Параметры |
---|
file | File : исходный файл |
gzipFile | File : файл для размещения сжатого содержимого. |
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 : начальное смещение извлекаемого файла. |
разархивироватьPartialZipFolder
public static void unzipPartialZipFolder (File targetFile,
CentralDirectoryInfo zipEntry)
Извлеките запрошенную папку из частичного zip-файла и примените соответствующие разрешения.
Параметры |
---|
targetFile | File : ERROR(/File) в которую нужно сохранить извлеченный файл. |
zipEntry | CentralDirectoryInfo : объект CentralDirectoryInfo файла, который необходимо извлечь из частичного zip-файла. |
Защищенные методы
валидироватьDestinationDir
protected static void validateDestinationDir (File destDir,
String filename)
Параметры |
---|
destDir | File |
filename | String |