ZipUtil

public class ZipUtil
extends Object

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


Uma classe auxiliar para operações relacionadas à compactação

Resumo

Construtores públicos

ZipUtil()

Métodos públicos

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

Adiciona recursivamente o arquivo e o conteúdo dele ao ZipOutputStream

static void applyPermission(File targetFile, CentralDirectoryInfo zipEntry)

Aplique a permissão de arquivo configurada na entrada do diretório central.

static void closeZip(ZipFile zipFile)

Feche uma ERROR(/ZipFile) aberta, ignorando todas as exceções.

static File createZip(File dir)

Método utilitário para criar um arquivo ZIP temporário contendo o diretório especificado e todo o conteúdo dele.

static File createZip( files, String name)

Método utilitário para criar um arquivo ZIP temporário com os arquivos especificados.

static File createZip(File dir, String name)

Método utilitário para criar um arquivo ZIP temporário contendo o diretório especificado e todo o conteúdo dele.

static File createZip( files)

Método utilitário para criar um arquivo ZIP temporário com os arquivos fornecidos

static void createZip(File dir, File zipFile)

Método utilitário para criar um arquivo ZIP contendo o diretório especificado e todo o conteúdo dele.

static void createZip( files, File zipFile)

Método utilitário para criar um arquivo ZIP com os arquivos especificados

static File extractFileFromZip(ZipFile zipFile, String filePath)

Método de utilitário para extrair um arquivo específico de um arquivo ZIP para um arquivo temporário

static void extractZip(ZipFile zipFile, File destDir)

Método utilitário para extrair todo o conteúdo do arquivo ZIP em um determinado diretório

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

Método utilitário para extrair o conteúdo do arquivo ZIP em um determinado diretório

static File extractZipToTemp(File zipFile, String nameHint)

Extrair um arquivo ZIP para um diretório temporário precedido por uma string

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

Receba uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo ZIP.

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

Receba uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo ZIP.

static getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)

Receba uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo ZIP.

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

Receba uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo ZIP.

static void gzipFile(File file, File gzipFile)

Método auxiliar para criar uma versão compactada de um único arquivo.

static boolean isZipFileValid(File zipFile, boolean thorough)

Método de utilitário para verificar se um arquivo ZIP não está corrompido.

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

Extraia um único arquivo solicitado de um arquivo ZIP parcial.

static void unzipPartialZipFolder(File targetFile, CentralDirectoryInfo zipEntry)

Extraia a pasta solicitada de um arquivo ZIP parcial e aplique a permissão adequada.

Métodos protegidos

static void validateDestinationDir(File destDir, String filename)

Construtores públicos

ZipUtil

public ZipUtil ()

Métodos públicos

addToZip

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

Adiciona recursivamente o arquivo e o conteúdo dele ao ZipOutputStream

Parâmetros
out ZipOutputStream: o ERROR(/ZipOutputStream)

file File: o ERROR(/File) a ser adicionado ao fluxo

relativePathSegs : o caminho relativo do arquivo, incluindo separadores

Gera
if failed to add file to zip

applyPermission

public static void applyPermission (File targetFile, 
                CentralDirectoryInfo zipEntry)

Aplique a permissão de arquivo configurada na entrada do diretório central.

Parâmetros
targetFile File: o ERROR(/File) para definir a permissão.

zipEntry CentralDirectoryInfo: um objeto CentralDirectoryInfo que contém as permissões do arquivo.

Gera
se não conseguir acessar o arquivo.

closeZip

public static void closeZip (ZipFile zipFile)

Feche uma ERROR(/ZipFile) aberta, ignorando todas as exceções.

Parâmetros
zipFile ZipFile: o arquivo a ser fechado

createZip

public static File createZip (File dir)

Método utilitário para criar um arquivo ZIP temporário contendo o diretório especificado e todo o conteúdo dele.

Parâmetros
dir File: o diretório a ser compactado

Retorna
File um arquivo zip temporário ERROR(/File) que contém o conteúdo do diretório

Gera
if failed to create zip file

createZip

public static File createZip ( files, 
                String name)

Método utilitário para criar um arquivo ZIP temporário com os arquivos especificados.

Parâmetros
files : lista de arquivos a serem compactados

name String: o nome básico do arquivo ZIP criado sem a extensão.

Retorna
File um arquivo zip temporário ERROR(/File) que contém o conteúdo do diretório

Gera
if failed to create zip file

createZip

public static File createZip (File dir, 
                String name)

Método utilitário para criar um arquivo ZIP temporário contendo o diretório especificado e todo o conteúdo dele.

Parâmetros
dir File: o diretório a ser compactado

name String: o nome básico do arquivo ZIP criado sem a extensão.

Retorna
File um arquivo zip temporário ERROR(/File) que contém o conteúdo do diretório

Gera
if failed to create zip file

createZip

public static File createZip ( files)

Método utilitário para criar um arquivo ZIP temporário com os arquivos fornecidos

Parâmetros
files : lista de arquivos a serem compactados

Retorna
File um arquivo zip ERROR(/File) temporário com o conteúdo do diretório

Gera
if failed to create zip file

createZip

public static void createZip (File dir, 
                File zipFile)

Método utilitário para criar um arquivo ZIP contendo o diretório especificado e todo o conteúdo dele.

Parâmetros
dir File: o diretório a ser compactado

zipFile File: o arquivo ZIP a ser criado, que não pode existir

Gera
if failed to create zip file

createZip

public static void createZip ( files, 
                File zipFile)

Método utilitário para criar um arquivo ZIP com os arquivos especificados

Parâmetros
files : lista de arquivos a serem compactados

zipFile File: o arquivo ZIP a ser criado, que não pode existir

Gera
if failed to create zip file

extractFileFromZip

public static File extractFileFromZip (ZipFile zipFile, 
                String filePath)

Método de utilitário para extrair um arquivo específico de um arquivo ZIP para um arquivo temporário

Parâmetros
zipFile ZipFile: o ERROR(/ZipFile) a ser extraído

filePath String: o filePath a ser extraído

Retorna
File o ERROR(/File) ou nulo, se não encontrado

Gera
if failed to extract file

extractZip

public static void extractZip (ZipFile zipFile, 
                File destDir)

Método utilitário para extrair todo o conteúdo do arquivo ZIP em um determinado diretório

Parâmetros
zipFile ZipFile: o ERROR(/ZipFile) a ser extraído

destDir File: o diretório local para extrair o arquivo

Gera
if failed to extract file

extractZip

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

Método utilitário para extrair o conteúdo do arquivo ZIP em um determinado diretório

Parâmetros
zipFile ZipFile: o ERROR(/ZipFile) a ser extraído

destDir File: o diretório local para extrair o arquivo

shouldExtract : o predicado para determinar se um ZipEntry precisa ser extraído

Gera
if failed to extract file

extractZipToTemp

public static File extractZipToTemp (File zipFile, 
                String nameHint)

Extrair um arquivo ZIP para um diretório temporário precedido por uma string

Parâmetros
zipFile File: o arquivo ZIP a ser extraído

nameHint String: um prefixo para o diretório temporário

Retorna
File um ERROR(/File) que aponta para o diretório temporário

getZipCentralDirectoryInfos

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

Receba uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo ZIP.

Parâmetros
partialZipFile File: um objeto ERROR(/File) do arquivo ZIP parcial que contém entradas de diretório central.

endCentralDirInfo EndCentralDirectoryInfo: um objeto EndCentralDirectoryInfo do arquivo ZIP.

useZip64 boolean: um booleano para oferecer suporte ao formato zip64 no download parcial.

Retorna
Uma lista de CentralDirectoryInfo do arquivo ZIP

Gera
IOException

getZipCentralDirectoryInfos

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

Receba uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo ZIP.

Parâmetros
partialZipFile File: um objeto ERROR(/File) do arquivo ZIP parcial que contém entradas de diretório central.

endCentralDirInfo EndCentralDirectoryInfo: um objeto EndCentralDirectoryInfo do arquivo ZIP.

offset long: o deslocamento no arquivo ZIP parcial em que o conteúdo das entradas do diretório central começa.

Retorna
Uma lista de CentralDirectoryInfo do arquivo ZIP

Gera
IOException

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo)

Receba uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo ZIP.

Parâmetros
partialZipFile File: um objeto ERROR(/File) do arquivo ZIP parcial que contém entradas de diretório central.

endCentralDirInfo EndCentralDirectoryInfo: um objeto EndCentralDirectoryInfo do arquivo ZIP.

Retorna
Uma lista de CentralDirectoryInfo do arquivo ZIP

Gera
IOException

getZipCentralDirectoryInfos

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

Receba uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo ZIP.

Parâmetros
partialZipFile File: um objeto ERROR(/File) do arquivo ZIP parcial que contém entradas de diretório central.

endCentralDirInfo EndCentralDirectoryInfo: um objeto EndCentralDirectoryInfo do arquivo ZIP.

offset long: o deslocamento no arquivo ZIP parcial em que o conteúdo das entradas do diretório central começa.

useZip64 boolean: um booleano para oferecer suporte ao formato zip64 no download parcial.

Retorna
Uma lista de CentralDirectoryInfo do arquivo ZIP

Gera
IOException

gzipFile

public static void gzipFile (File file, 
                File gzipFile)

Método auxiliar para criar uma versão compactada de um único arquivo.

Parâmetros
file File: o arquivo original

gzipFile File: o arquivo em que o conteúdo compactado será colocado

Gera
IOException

isZipFileValid

public static boolean isZipFileValid (File zipFile, 
                boolean thorough)

Método de utilitário para verificar se um arquivo ZIP não está corrompido.

Parâmetros
zipFile File: o ERROR(/File) a ser verificado

thorough boolean: indica se a tentativa de extração completa do arquivo será feita. Se false, esse método não detectará erros de CRC em um arquivo bem formado.

Retorna
boolean false se o arquivo estiver corrompido; true, caso contrário

Gera
se o arquivo não puder ser aberto ou lido

unzipPartialZipFile

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

Extraia um único arquivo solicitado de um arquivo ZIP parcial.

Esse método pressupõe que todos os arquivos estejam no mesmo disco quando compactados.

Se ERROR(/targetFile) for um diretório, um diretório vazio será criado sem o conteúdo.

Se ERROR(/targetFile) for um link simbólico, ele será criado, mas não será resolvido.

Ele ainda não oferece suporte aos seguintes recursos:

Arquivo ZIP maior que 4 GB

ZIP64: requer a atualização de ZipLocalFileHeader no tamanho compactado.

Arquivo ZIP criptografado

Parâmetros
partialZip File: um ERROR(/File) que é parcial do arquivo ZIP.

targetFile File: o ERROR(/File) para salvar o arquivo extraído.

zipEntry CentralDirectoryInfo: um objeto CentralDirectoryInfo do arquivo a ser extraído do arquivo ZIP parcial.

localFileHeader LocalFileHeader: um objeto LocalFileHeader do arquivo a ser extraído do arquivo ZIP parcial.

startOffset long: o deslocamento inicial do arquivo a ser extraído.

Gera
IOException

unzipPartialZipFolder

public static void unzipPartialZipFolder (File targetFile, 
                CentralDirectoryInfo zipEntry)

Extraia a pasta solicitada de um arquivo ZIP parcial e aplique a permissão adequada.

Parâmetros
targetFile File: o ERROR(/File) em que o arquivo extraído será salvo.

zipEntry CentralDirectoryInfo: um objeto CentralDirectoryInfo do arquivo a ser extraído do arquivo ZIP parcial.

Gera
IOException

Métodos protegidos

validateDestinationDir

protected static void validateDestinationDir (File destDir, 
                String filename)

Parâmetros
destDir File

filename String