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) addToZip (ZipOutputStream out, File file, relativePathSegs)

Adiciona recursivamente determinado arquivo e seu conteúdo 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 um ERROR(/ZipFile) aberto, ignorando quaisquer exceções.

static File createZip (File dir)

Método utilitário para criar um arquivo zip temporário contendo o diretório fornecido e todo o seu conteúdo.

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

Método utilitário para criar um arquivo zip temporário contendo os arquivos fornecidos.

static File createZip (File dir, String name)

Método utilitário para criar um arquivo zip temporário contendo o diretório fornecido e todo o seu conteúdo.

static File createZip ( files) createZip ( files)

Método utilitário para criar um arquivo zip temporário contendo os arquivos fornecidos

static void createZip (File dir, File zipFile)

Método utilitário para criar um arquivo zip contendo o diretório fornecido e todo o seu conteúdo.

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

Método utilitário para criar um arquivo zip contendo os arquivos fornecidos

static File extractFileFromZip (ZipFile zipFile, String filePath)

Método utilitário para extrair um arquivo específico do arquivo zip para um arquivo tmp

static void extractZip (ZipFile zipFile, File destDir)

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

static void extractZip (ZipFile zipFile, File destDir, shouldExtract) 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)

Extraia um arquivo zip para um diretório temporário prefixado com uma string

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

Obtenha uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo zip.

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

Obtenha uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo zip.

static getZipCentralDirectoryInfos (File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)

Obtenha uma lista de {link CentralDirectoryInfo} para arquivos em um arquivo zip.

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

Obtenha 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 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 o 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 determinado arquivo e seu conteúdo ao ZipOutputStream

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

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

relativePathSegs : o caminho relativo do arquivo, incluindo separadores

Lança
se não foi possível adicionar o arquivo ao zip

aplicarPermissão

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 de arquivo.

Lança
se não conseguir acessar o arquivo.

fecharZip

public static void closeZip (ZipFile zipFile)

Feche um ERROR(/ZipFile) aberto, ignorando quaisquer exceções.

Parâmetros
zipFile ZipFile : o arquivo a ser fechado

criarZip

public static File createZip (File dir)

Método utilitário para criar um arquivo zip temporário contendo o diretório fornecido e todo o seu conteúdo.

Parâmetros
dir File : o diretório para compactar

Devoluções
File um zip ERROR(/File) temporário contendo o conteúdo do diretório

Lança
se não foi possível criar o arquivo zip

criarZip

public static File createZip ( files, 
                String name)

Método utilitário para criar um arquivo zip temporário contendo os arquivos fornecidos.

Parâmetros
files : lista de arquivos para compactar

name String : o nome base do arquivo zip criado sem a extensão.

Devoluções
File um zip ERROR(/File) temporário contendo o conteúdo do diretório

Lança
se não foi possível criar o arquivo zip

criarZip

public static File createZip (File dir, 
                String name)

Método utilitário para criar um arquivo zip temporário contendo o diretório fornecido e todo o seu conteúdo.

Parâmetros
dir File : o diretório para compactar

name String : o nome base do arquivo zip criado sem a extensão.

Devoluções
File um zip ERROR(/File) temporário contendo o conteúdo do diretório

Lança
se não foi possível criar o arquivo zip

criarZip

public static File createZip ( files)

Método utilitário para criar um arquivo zip temporário contendo os arquivos fornecidos

Parâmetros
files : lista de arquivos para compactar

Devoluções
File um zip ERROR(/File) temporário contendo o conteúdo do diretório

Lança
se não foi possível criar o arquivo zip

criarZip

public static void createZip (File dir, 
                File zipFile)

Método utilitário para criar um arquivo zip contendo o diretório fornecido e todo o seu conteúdo.

Parâmetros
dir File : o diretório para compactar

zipFile File : o arquivo zip a ser criado - ele ainda não deveria existir

Lança
se não foi possível criar o arquivo zip

criarZip

public static void createZip ( files, 
                File zipFile)

Método utilitário para criar um arquivo zip contendo os arquivos fornecidos

Parâmetros
files : lista de arquivos para compactar

zipFile File : o arquivo zip a ser criado - ele ainda não deveria existir

Lança
se não foi possível criar o arquivo zip

extrairFileFromZip

public static File extractFileFromZip (ZipFile zipFile, 
                String filePath)

Método utilitário para extrair um arquivo específico do arquivo zip para um arquivo tmp

Parâmetros
zipFile ZipFile : o ERROR(/ZipFile) para extrair

filePath String : o filePath do qual extrair

Devoluções
File o ERROR(/File) ou nulo se não for encontrado

Lança
se não conseguiu extrair o arquivo

extrairZip

public static void extractZip (ZipFile zipFile, 
                File destDir)

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

Parâmetros
zipFile ZipFile : o ERROR(/ZipFile) para extrair

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

Lança
se não conseguiu extrair o arquivo

extrairZip

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) para extrair

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

shouldExtract : o predicado para dermine se um ZipEntry deve ser extraído

Lança
se não conseguiu extrair o arquivo

extrairZipToTemp

public static File extractZipToTemp (File zipFile, 
                String nameHint)

Extraia um arquivo zip para um diretório temporário prefixado com uma string

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

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

Devoluções
File um ERROR(/File) apontando para o diretório temporário

getZipCentralDirectoryInfos

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

Obtenha 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 do diretório central.

endCentralDirInfo EndCentralDirectoryInfo : um objeto EndCentralDirectoryInfo do arquivo zip.

useZip64 boolean : um booleano para suportar o formato zip64 em download parcial.

Devoluções
Uma lista de CentralDirectoryInfo do arquivo zip

Lança
IOException

getZipCentralDirectoryInfos

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

Obtenha 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 do diretório central.

endCentralDirInfo EndCentralDirectoryInfo : um objeto EndCentralDirectoryInfo do arquivo zip.

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

Devoluções
Uma lista de CentralDirectoryInfo do arquivo zip

Lança
IOException

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo)

Obtenha 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 do diretório central.

endCentralDirInfo EndCentralDirectoryInfo : um objeto EndCentralDirectoryInfo do arquivo zip.

Devoluções
Uma lista de CentralDirectoryInfo do arquivo zip

Lança
IOException

getZipCentralDirectoryInfos

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

Obtenha 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 do diretório central.

endCentralDirInfo EndCentralDirectoryInfo : um objeto EndCentralDirectoryInfo do arquivo zip.

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

useZip64 boolean : um booleano para suportar o formato zip64 em download parcial.

Devoluções
Uma lista de CentralDirectoryInfo do arquivo zip

Lança
IOException

arquivo gzip

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 para colocar o conteúdo compactado

Lança
IOException

isZipFileValid

public static boolean isZipFileValid (File zipFile, 
                boolean thorough)

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

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

thorough boolean : se deve tentar extrair totalmente o arquivo. Se false , este método não detectará erros de CRC em um arquivo bem formado.

Devoluções
boolean false se o arquivo parecer corrompido; true caso contrário

Lança
se o arquivo não pôde ser aberto ou lido

descompactarPartialZipFile

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

Extraia o arquivo solicitado de um arquivo zip parcial.

Este método assume que todos os arquivos estão no mesmo disco quando compactados. Ele ainda não oferece suporte aos seguintes recursos:

Arquivo zip maior que 4 GB

ZIP64 (requer atualização do ZipLocalFileHeader no tamanho compactado)

Arquivo zip criptografado

Link simbólico

Parâmetros
partialZip File : um ERROR(/File) que é uma parte 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 : início do deslocamento do arquivo a ser extraído.

Lança
IOException

descompactarPartialZipFolder

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) para salvar o arquivo extraído.

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

Lança
IOException

Métodos protegidos

validarDestinationDir

protected static void validateDestinationDir (File destDir, 
                String filename)

Parâmetros
destDir File

filename String