ZipUtil

public class ZipUtil
extends Object

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


Una classe helper per le operazioni relative alla compressione

Riepilogo

Costruttori pubblici

ZipUtil()

Metodi pubblici

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

Aggiunge ricorsivamente un determinato file e i suoi contenuti a ZipOutputStream

static void applyPermission(File targetFile, CentralDirectoryInfo zipEntry)

Applica l'autorizzazione per i file configurata nella voce della directory centrale.

static void closeZip(ZipFile zipFile)

Chiudi un'istanza ERROR(/ZipFile) aperta, ignorando le eccezioni.

static File createZip(File dir)

Metodo di utilità per creare un file ZIP temporaneo contenente la directory specificata e tutti i suoi contenuti.

static File createZip( files, String name)

Metodo di utilità per creare un file ZIP temporaneo contenente i file specificati.

static File createZip(File dir, String name)

Metodo di utilità per creare un file ZIP temporaneo contenente la directory specificata e tutti i suoi contenuti.

static File createZip( files)

Metodo di utilità per creare un file ZIP temporaneo contenente i file specificati

static void createZip(File dir, File zipFile)

Metodo di utilità per creare un file ZIP contenente la directory specificata e tutti i suoi contenuti.

static void createZip( files, File zipFile)

Metodo di utilità per creare un file ZIP contenente i file specificati

static File extractFileFromZip(ZipFile zipFile, String filePath)

Metodo di utilità per estrarre un file specifico dal file ZIP a un file tmp

static void extractZip(ZipFile zipFile, File destDir)

Metodo di utilità per estrarre l'intero contenuto del file ZIP in una determinata directory

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

Metodo di utilità per estrarre i contenuti del file ZIP in una determinata directory

static File extractZipToTemp(File zipFile, String nameHint)

Estrai un file ZIP in una directory temporanea anteposta a una stringa

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

Ottieni un elenco di {link CentralDirectoryInfo} per i file in un file ZIP.

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

Ottieni un elenco di {link CentralDirectoryInfo} per i file in un file ZIP.

static getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)

Ottieni un elenco di {link CentralDirectoryInfo} per i file in un file ZIP.

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

Ottieni un elenco di {link CentralDirectoryInfo} per i file in un file ZIP.

static void gzipFile(File file, File gzipFile)

Metodo di supporto per creare una versione compressa con gzip di un singolo file.

static boolean isZipFileValid(File zipFile, boolean thorough)

Metodo di utilità per verificare che un file ZIP non sia danneggiato.

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

Estrai un singolo file richiesto da un file ZIP parziale.

static void unzipPartialZipFolder(File targetFile, CentralDirectoryInfo zipEntry)

Estrai la cartella richiesta da un file ZIP parziale e applica l'autorizzazione appropriata.

Metodi protetti

static void validateDestinationDir(File destDir, String filename)

Costruttori pubblici

ZipUtil

public ZipUtil ()

Metodi pubblici

aggiungiToZip

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

Aggiunge ricorsivamente un determinato file e i suoi contenuti a ZipOutputStream

Parametri
out ZipOutputStream: ERROR(/ZipOutputStream)

file File: il ERROR(/File) da aggiungere allo stream

relativePathSegs : il percorso relativo del file, inclusi i separatori

Lanci
se non è stato possibile aggiungere il file al file zip

applicaAutorizzazione

public static void applyPermission (File targetFile, 
                CentralDirectoryInfo zipEntry)

Applica l'autorizzazione per i file configurata nella voce della directory centrale.

Parametri
targetFile File: il ERROR(/File) su cui impostare l'autorizzazione.

zipEntry CentralDirectoryInfo: un oggetto CentralDirectoryInfo che contiene le autorizzazioni del file.

Lanci
in caso di mancato accesso al file.

chiudiZip

public static void closeZip (ZipFile zipFile)

Chiudi un'istanza ERROR(/ZipFile) aperta, ignorando le eccezioni.

Parametri
zipFile ZipFile: il file da chiudere

creareZip

public static File createZip (File dir)

Metodo di utilità per creare un file ZIP temporaneo contenente la directory specificata e tutti i suoi contenuti.

Parametri
dir File: la directory per comprimere

Ritorni
File un file ZIP temporaneo ERROR(/File) con i contenuti della directory

Lanci
se la creazione del file ZIP non è riuscita

creareZip

public static File createZip ( files, 
                String name)

Metodo di utilità per creare un file ZIP temporaneo contenente i file specificati.

Parametri
files : elenco di file da comprimere

name String: il nome di base del file ZIP creato senza l'estensione.

Ritorni
File un file ZIP temporaneo ERROR(/File) con i contenuti della directory

Lanci
se la creazione del file ZIP non è riuscita

creareZip

public static File createZip (File dir, 
                String name)

Metodo di utilità per creare un file ZIP temporaneo contenente la directory specificata e tutti i suoi contenuti.

Parametri
dir File: la directory per comprimere

name String: il nome di base del file ZIP creato senza l'estensione.

Ritorni
File un file ZIP temporaneo ERROR(/File) con i contenuti della directory

Lanci
se la creazione del file ZIP non è riuscita

creareZip

public static File createZip ( files)

Metodo di utilità per creare un file ZIP temporaneo contenente i file specificati

Parametri
files : elenco di file da comprimere

Ritorni
File un file ZIP temporaneo ERROR(/File) con i contenuti della directory

Lanci
se la creazione del file ZIP non è riuscita

creareZip

public static void createZip (File dir, 
                File zipFile)

Metodo di utilità per creare un file ZIP contenente la directory specificata e tutti i suoi contenuti.

Parametri
dir File: la directory per comprimere

zipFile File: il file ZIP da creare (non dovrebbe già esistere)

Lanci
se la creazione del file ZIP non è riuscita

creareZip

public static void createZip ( files, 
                File zipFile)

Metodo di utilità per creare un file ZIP contenente i file specificati

Parametri
files : elenco di file da comprimere

zipFile File: il file ZIP da creare (non dovrebbe già esistere)

Lanci
se la creazione del file ZIP non è riuscita

estraiFileDaZip

public static File extractFileFromZip (ZipFile zipFile, 
                String filePath)

Metodo di utilità per estrarre un file specifico dal file ZIP a un file tmp

Parametri
zipFile ZipFile: il ERROR(/ZipFile) da estrarre

filePath String: il filePath di da estrarre

Ritorni
File ERROR(/File) o null se non trovato

Lanci
se l'estrazione del file non è riuscita

estraiZip

public static void extractZip (ZipFile zipFile, 
                File destDir)

Metodo di utilità per estrarre l'intero contenuto del file ZIP in una determinata directory

Parametri
zipFile ZipFile: il ERROR(/ZipFile) da estrarre

destDir File: il directory locale in cui estrarre il file

Lanci
se l'estrazione del file non è riuscita

estraiZip

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

Metodo di utilità per estrarre i contenuti del file ZIP in una determinata directory

Parametri
zipFile ZipFile: il ERROR(/ZipFile) da estrarre

destDir File: il directory locale in cui estrarre il file

shouldExtract : il predicato per estrarre se è necessario estrarre una voce ZipEntry

Lanci
se l'estrazione del file non è riuscita

estraiZipToTemp

public static File extractZipToTemp (File zipFile, 
                String nameHint)

Estrai un file ZIP in una directory temporanea anteposta a una stringa

Parametri
zipFile File: il file ZIP da estrarre

nameHint String: un prefisso per la directory temporanea

Ritorni
File ERROR(/File) che punta alla directory temporanea

getZipCentralDirectoryInfos

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

Ottieni un elenco di {link CentralDirectoryInfo} per i file in un file ZIP.

Parametri
partialZipFile File: un oggetto ERROR(/File) del file ZIP parziale che contiene le voci della directory centrale.

endCentralDirInfo EndCentralDirectoryInfo: un oggetto EndCentralDirectoryInfo del file ZIP.

useZip64 boolean: un valore booleano per supportare il formato zip64 in un download parziale.

Ritorni
Un elenco di CentralDirectoryInfo del file ZIP

Lanci
Eccezione IO

getZipCentralDirectoryInfos

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

Ottieni un elenco di {link CentralDirectoryInfo} per i file in un file ZIP.

Parametri
partialZipFile File: un oggetto ERROR(/File) del file ZIP parziale che contiene le voci della directory centrale.

endCentralDirInfo EndCentralDirectoryInfo: un oggetto EndCentralDirectoryInfo del file ZIP.

offset long: l'offset nel file ZIP parziale in cui inizia il contenuto delle voci della directory centrale.

Ritorni
Un elenco di CentralDirectoryInfo del file ZIP

Lanci
Eccezione IO

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo)

Ottieni un elenco di {link CentralDirectoryInfo} per i file in un file ZIP.

Parametri
partialZipFile File: un oggetto ERROR(/File) del file ZIP parziale che contiene le voci della directory centrale.

endCentralDirInfo EndCentralDirectoryInfo: un oggetto EndCentralDirectoryInfo del file ZIP.

Ritorni
Un elenco di CentralDirectoryInfo del file ZIP

Lanci
Eccezione IO

getZipCentralDirectoryInfos

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

Ottieni un elenco di {link CentralDirectoryInfo} per i file in un file ZIP.

Parametri
partialZipFile File: un oggetto ERROR(/File) del file ZIP parziale che contiene le voci della directory centrale.

endCentralDirInfo EndCentralDirectoryInfo: un oggetto EndCentralDirectoryInfo del file ZIP.

offset long: l'offset nel file ZIP parziale in cui inizia il contenuto delle voci della directory centrale.

useZip64 boolean: un valore booleano per supportare il formato zip64 in un download parziale.

Ritorni
Un elenco di CentralDirectoryInfo del file ZIP

Lanci
Eccezione IO

File gzip

public static void gzipFile (File file, 
                File gzipFile)

Metodo di supporto per creare una versione compressa con gzip di un singolo file.

Parametri
file File: il file originale

gzipFile File: il file in cui inserire i contenuti compressi

Lanci
Eccezione IO

File isZipValid

public static boolean isZipFileValid (File zipFile, 
                boolean thorough)

Metodo di utilità per verificare che un file ZIP non sia danneggiato.

Parametri
zipFile File: ERROR(/File) da verificare

thorough boolean: indica se tentare di estrarre completamente l'archivio. Se false, questo metodo non rileverà gli errori CRC in un archivio corretto.

Ritorni
boolean false se il file risulta danneggiato; true in caso contrario

Lanci
se non è stato possibile aprire o leggere il file

decomprimi FileZipparziale

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

Estrai un singolo file richiesto da un file ZIP parziale.

Questo metodo presuppone che tutti i file si trovino sullo stesso disco quando vengono compressi.

Se ERROR(/targetFile) è una directory, verrà creata una directory vuota senza il suo contenuto.

Se ERROR(/targetFile) è un link simbolico, verrà creato un link simbolico, ma non risolto.

Non supporta ancora le seguenti funzionalità:

File ZIP di dimensioni superiori a 4 GB

ZIP64(richiede l'aggiornamento di ZipLocalFileHeader per la dimensione compressa)

File ZIP criptato

Parametri
partialZip File: un ERROR(/File) che è una parte del file ZIP.

targetFile File: il ERROR(/File) in cui salvare il file estratto.

zipEntry CentralDirectoryInfo: un oggetto CentralDirectoryInfo del file da estrarre dal file ZIP parziale.

localFileHeader LocalFileHeader: un oggetto LocalFileHeader del file da estrarre dal file ZIP parziale.

startOffset long: offset iniziale del file da estrarre.

Lanci
Eccezione IO

decomprimiPartialZipCartella

public static void unzipPartialZipFolder (File targetFile, 
                CentralDirectoryInfo zipEntry)

Estrai la cartella richiesta da un file ZIP parziale e applica l'autorizzazione appropriata.

Parametri
targetFile File: il ERROR(/File) in cui salvare il file estratto.

zipEntry CentralDirectoryInfo: un oggetto CentralDirectoryInfo del file da estrarre dal file ZIP parziale.

Lanci
Eccezione IO

Metodi protetti

convalidaDestinationDir

protected static void validateDestinationDir (File destDir, 
                String filename)

Parametri
destDir File

filename String