ZipUtil
public
class
ZipUtil
extends Object
java.lang.Object
|
↳ |
com.android.tradefed.util.ZipUtil
|
Eine Hilfsklasse für komprimierungsbezogene Vorgänge
Zusammenfassung
Öffentliche Konstruktoren |
ZipUtil()
|
Öffentliche Methoden |
static
void
|
addToZip(ZipOutputStream out, File file, relativePathSegs)
Fügt die angegebene Datei und ihren Inhalt rekursiv dem ZipOutputStream hinzu
|
static
void
|
applyPermission(File targetFile, CentralDirectoryInfo zipEntry)
Wenden Sie die im Zentralverzeichniseintrag konfigurierte Dateiberechtigung an.
|
static
void
|
closeZip(ZipFile zipFile)
Schließen Sie eine geöffnete ERROR(/ZipFile) , ohne Ausnahmen zu berücksichtigen.
|
static
File
|
createZip(File dir)
Dienstprogrammmethode zum Erstellen einer temporären ZIP-Datei mit dem angegebenen Verzeichnis und dem gesamten Inhalt.
|
static
File
|
createZip( files, String name)
Dienstprogrammmethode zum Erstellen einer temporären ZIP-Datei mit den angegebenen Dateien.
|
static
File
|
createZip(File dir, String name)
Dienstprogrammmethode zum Erstellen einer temporären ZIP-Datei mit dem angegebenen Verzeichnis und dem gesamten Inhalt.
|
static
File
|
createZip( files)
Dienstprogrammmethode zum Erstellen einer temporären ZIP-Datei mit den angegebenen Dateien
|
static
void
|
createZip(File dir, File zipFile)
Dienstprogrammmethode zum Erstellen einer ZIP-Datei mit dem angegebenen Verzeichnis und dem gesamten Inhalt.
|
static
void
|
createZip( files, File zipFile)
Dienstprogrammmethode zum Erstellen einer ZIP-Datei mit den angegebenen Dateien
|
static
File
|
extractFileFromZip(ZipFile zipFile, String filePath)
Dienstprogrammmethode zum Extrahieren einer bestimmten Datei aus einer ZIP-Datei in eine temporäre Datei
|
static
void
|
extractZip(ZipFile zipFile, File destDir)
Dienstprogrammmethode zum Extrahieren des gesamten Inhalts einer ZIP-Datei in ein angegebenes Verzeichnis
|
static
void
|
extractZip(ZipFile zipFile, File destDir, shouldExtract)
Dienstprogrammmethode zum Extrahieren des Inhalts einer ZIP-Datei in ein angegebenes Verzeichnis
|
static
File
|
extractZipToTemp(File zipFile, String nameHint)
ZIP-Datei in ein temporäres Verzeichnis mit einem String vorangestellt extrahieren
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, boolean useZip64)
Liste der {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset)
Liste der {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)
Liste der {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset, boolean useZip64)
Liste der {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen
|
static
void
|
gzipFile(File file, File gzipFile)
Hilfsmethode zum Erstellen einer komprimierten Version einer einzelnen Datei.
|
static
boolean
|
isZipFileValid(File zipFile, boolean thorough)
Dienstprogrammmethode, um zu prüfen, ob eine ZIP-Datei nicht beschädigt ist.
|
static
void
|
unzipPartialZipFile(File partialZip, File targetFile, CentralDirectoryInfo zipEntry, LocalFileHeader localFileHeader, long startOffset)
Eine einzelne angeforderte Datei aus einer teilweisen ZIP-Datei extrahieren
|
static
void
|
unzipPartialZipFolder(File targetFile, CentralDirectoryInfo zipEntry)
Extrahieren Sie den angeforderten Ordner aus einer teilweisen ZIP-Datei und wenden Sie die richtige Berechtigung an.
|
Öffentliche Konstruktoren
ZipUtil
public ZipUtil ()
Öffentliche Methoden
addToZip
public static void addToZip (ZipOutputStream out,
File file,
relativePathSegs)
Fügt die angegebene Datei und ihren Inhalt rekursiv dem ZipOutputStream hinzu
Parameter |
out |
ZipOutputStream : die ERROR(/ZipOutputStream) |
file |
File : ERROR(/File) , das dem Stream hinzugefügt werden soll |
relativePathSegs |
: der relative Pfad der Datei, einschließlich Trennzeichen |
Ausgabe |
|
if failed to add file to zip |
applyPermission
public static void applyPermission (File targetFile,
CentralDirectoryInfo zipEntry)
Wenden Sie die im Zentralverzeichniseintrag konfigurierte Dateiberechtigung an.
Parameter |
targetFile |
File : Die ERROR(/File) , für die die Berechtigung festgelegt werden soll. |
zipEntry |
CentralDirectoryInfo : Ein CentralDirectoryInfo -Objekt, das die Dateiberechtigungen enthält. |
Ausgabe |
|
wenn der Zugriff auf die Datei fehlschlägt. |
closeZip
public static void closeZip (ZipFile zipFile)
Schließen Sie eine geöffnete ERROR(/ZipFile)
, ohne Ausnahmen zu berücksichtigen.
Parameter |
zipFile |
ZipFile : die Datei, die geschlossen werden soll |
createZip
public static File createZip (File dir)
Dienstprogrammmethode zum Erstellen einer temporären ZIP-Datei mit dem angegebenen Verzeichnis und dem gesamten Inhalt.
Parameter |
dir |
File : das Verzeichnis, das gezippt werden soll |
Returns |
File |
ein temporäres ZIP-ERROR(/File) mit Verzeichnisinhalten |
Ausgabe |
|
if failed to create zip file |
createZip
public static File createZip ( files,
String name)
Dienstprogrammmethode zum Erstellen einer temporären ZIP-Datei mit den angegebenen Dateien.
Parameter |
files |
: Liste der zu komprimierenden Dateien |
name |
String : der Basisname der erstellten ZIP-Datei ohne Erweiterung. |
Returns |
File |
ein temporäres ZIP-ERROR(/File) mit Verzeichnisinhalten |
Ausgabe |
|
if failed to create zip file |
createZip
public static File createZip (File dir,
String name)
Dienstprogrammmethode zum Erstellen einer temporären ZIP-Datei mit dem angegebenen Verzeichnis und dem gesamten Inhalt.
Parameter |
dir |
File : das Verzeichnis, das gezippt werden soll |
name |
String : der Basisname der erstellten ZIP-Datei ohne Erweiterung. |
Returns |
File |
ein temporäres ZIP-ERROR(/File) mit Verzeichnisinhalten |
Ausgabe |
|
if failed to create zip file |
createZip
public static File createZip ( files)
Dienstprogrammmethode zum Erstellen einer temporären ZIP-Datei mit den angegebenen Dateien
Parameter |
files |
: Liste der zu komprimierenden Dateien |
Returns |
File |
ein temporäres ZIP-ERROR(/File) mit Verzeichnisinhalten |
Ausgabe |
|
if failed to create zip file |
createZip
public static void createZip (File dir,
File zipFile)
Dienstprogrammmethode zum Erstellen einer ZIP-Datei mit dem angegebenen Verzeichnis und dem gesamten Inhalt.
Parameter |
dir |
File : das Verzeichnis, das gezippt werden soll |
zipFile |
File : die zu erstellende ZIP-Datei, die noch nicht vorhanden sein darf |
Ausgabe |
|
if failed to create zip file |
createZip
public static void createZip ( files,
File zipFile)
Dienstprogrammmethode zum Erstellen einer ZIP-Datei mit den angegebenen Dateien
Parameter |
files |
: Liste der zu komprimierenden Dateien |
zipFile |
File : die zu erstellende ZIP-Datei, die noch nicht vorhanden sein darf |
Ausgabe |
|
if failed to create zip file |
public static File extractFileFromZip (ZipFile zipFile,
String filePath)
Dienstprogrammmethode zum Extrahieren einer bestimmten Datei aus einer ZIP-Datei in eine temporäre Datei
Parameter |
zipFile |
ZipFile : der zu extrahierende ERROR(/ZipFile) |
filePath |
String : Pfad zur zu extrahierenden Datei |
Returns |
File |
die ERROR(/File) oder „null“, falls nicht gefunden |
Ausgabe |
|
if failed to extract file |
public static void extractZip (ZipFile zipFile,
File destDir)
Dienstprogrammmethode zum Extrahieren des gesamten Inhalts einer ZIP-Datei in ein angegebenes Verzeichnis
Parameter |
zipFile |
ZipFile : der zu extrahierende ERROR(/ZipFile) |
destDir |
File : der lokale Ordner, in den die Datei extrahiert werden soll |
Ausgabe |
|
if failed to extract file |
public static void extractZip (ZipFile zipFile,
File destDir,
shouldExtract)
Dienstprogrammmethode zum Extrahieren des Inhalts einer ZIP-Datei in ein angegebenes Verzeichnis
Parameter |
zipFile |
ZipFile : der zu extrahierende ERROR(/ZipFile) |
destDir |
File : der lokale Ordner, in den die Datei extrahiert werden soll |
shouldExtract |
: das Prädikat, mit dem ermittelt wird, ob ein ZipEntry extrahiert werden soll |
Ausgabe |
|
if failed to extract file |
public static File extractZipToTemp (File zipFile,
String nameHint)
ZIP-Datei in ein temporäres Verzeichnis mit einem String vorangestellt extrahieren
Parameter |
zipFile |
File : die zu extrahierende ZIP-Datei |
nameHint |
String : ein Präfix für das temporäre Verzeichnis |
Returns |
File |
einen ERROR(/File) , der auf das temporäre Verzeichnis verweist |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
boolean useZip64)
Liste der {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen
Parameter |
partialZipFile |
File : Ein ERROR(/File) -Objekt der teilweisen ZIP-Datei, das zentrale Verzeichniseinträge enthält. |
endCentralDirInfo |
EndCentralDirectoryInfo : ein EndCentralDirectoryInfo -Objekt der ZIP-Datei. |
useZip64 |
boolean : ein boolescher Wert, um das Zip64-Format beim Teildownload zu unterstützen. |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
long offset)
Liste der {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen
Parameter |
partialZipFile |
File : Ein ERROR(/File) -Objekt der teilweisen ZIP-Datei, das zentrale Verzeichniseinträge enthält. |
endCentralDirInfo |
EndCentralDirectoryInfo : ein EndCentralDirectoryInfo -Objekt der ZIP-Datei. |
offset |
long : Der Offset in der teilweisen ZIP-Datei, an dem der Inhalt der Einträge im zentralen Verzeichnis beginnt. |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo)
Liste der {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen
Parameter |
partialZipFile |
File : Ein ERROR(/File) -Objekt der teilweisen ZIP-Datei, das zentrale Verzeichniseinträge enthält. |
endCentralDirInfo |
EndCentralDirectoryInfo : ein EndCentralDirectoryInfo -Objekt der ZIP-Datei. |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
long offset,
boolean useZip64)
Liste der {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen
Parameter |
partialZipFile |
File : Ein ERROR(/File) -Objekt der teilweisen ZIP-Datei, das zentrale Verzeichniseinträge enthält. |
endCentralDirInfo |
EndCentralDirectoryInfo : ein EndCentralDirectoryInfo -Objekt der ZIP-Datei. |
offset |
long : Der Offset in der teilweisen ZIP-Datei, an dem der Inhalt der Einträge im zentralen Verzeichnis beginnt. |
useZip64 |
boolean : ein boolescher Wert, um das Zip64-Format beim Teildownload zu unterstützen. |
gzipFile
public static void gzipFile (File file,
File gzipFile)
Hilfsmethode zum Erstellen einer komprimierten Version einer einzelnen Datei.
Parameter |
file |
File : die Originaldatei |
gzipFile |
File : Datei, in der der komprimierte Inhalt gespeichert werden soll |
isZipFileValid
public static boolean isZipFileValid (File zipFile,
boolean thorough)
Dienstprogrammmethode, um zu prüfen, ob eine ZIP-Datei nicht beschädigt ist.
Parameter |
zipFile |
File : Die zu prüfende ERROR(/File) |
thorough |
boolean : Gibt an, ob versucht werden soll, das Archiv vollständig zu extrahieren. Wenn false , werden mit dieser Methode keine CRC-Fehler in einem korrekt formatierten Archiv erkannt. |
Returns |
boolean |
false , wenn die Datei beschädigt zu sein scheint, andernfalls true |
Ausgabe |
|
wenn die Datei nicht geöffnet oder gelesen werden konnte |
unzipPartialZipFile
public static void unzipPartialZipFile (File partialZip,
File targetFile,
CentralDirectoryInfo zipEntry,
LocalFileHeader localFileHeader,
long startOffset)
Eine einzelne angeforderte Datei aus einer teilweisen ZIP-Datei extrahieren
Bei dieser Methode wird davon ausgegangen, dass sich alle Dateien beim Komprimieren auf demselben Laufwerk befinden.
Wenn ERROR(/targetFile)
ein Verzeichnis ist, wird ein leeres Verzeichnis ohne Inhalt erstellt.
Wenn ERROR(/targetFile)
ein Symlink ist, wird ein Symlink erstellt, aber nicht aufgelöst.
Folgende Funktionen werden noch nicht unterstützt:
ZIP-Datei größer als 4 GB
ZIP64(aktualisiert den ZipLocalFileHeader bei komprimierter Größe)
Verschlüsselte ZIP-Datei
Parameter |
partialZip |
File : eine ERROR(/File) , die einen Teil der ZIP-Datei enthält. |
targetFile |
File : der ERROR(/File) , in dem die extrahierte Datei gespeichert werden soll. |
zipEntry |
CentralDirectoryInfo : ein CentralDirectoryInfo -Objekt der Datei, die aus der teilweisen ZIP-Datei extrahiert werden soll. |
localFileHeader |
LocalFileHeader : ein LocalFileHeader -Objekt der Datei, die aus der teilweisen ZIP-Datei extrahiert werden soll. |
startOffset |
long : Startoffset der zu extrahierenden Datei. |
unzipPartialZipFolder
public static void unzipPartialZipFolder (File targetFile,
CentralDirectoryInfo zipEntry)
Extrahieren Sie den angeforderten Ordner aus einer teilweisen ZIP-Datei und wenden Sie die richtige Berechtigung an.
Parameter |
targetFile |
File : der ERROR(/File) , in dem die extrahierte Datei gespeichert werden soll. |
zipEntry |
CentralDirectoryInfo : ein CentralDirectoryInfo -Objekt der Datei, die aus der teilweisen ZIP-Datei extrahiert werden soll. |
Geschützte Methoden
validateDestinationDir
protected static void validateDestinationDir (File destDir,
String filename)
Parameter |
destDir |
File |
filename |
String |