ZipUtil
public
class
ZipUtil
extends Object
java.lang.Object
|
😎 |
com.android.tradefed.util.ZipUtil
|
Eine Hilfsklasse für Komprimierungsvorgänge
Zusammenfassung
Öffentliche Konstruktoren |
ZipUtil()
|
Öffentliche Methoden |
static
void
|
addToZip(ZipOutputStream out, File file, relativePathSegs)
Fügt die angegebene Datei und ihre Inhalte rekursiv zu ZipOutputStream hinzu
|
static
void
|
applyPermission(File targetFile, CentralDirectoryInfo zipEntry)
Wenden Sie die im zentralen Verzeichniseintrag konfigurierte Dateiberechtigung an.
|
static
void
|
closeZip(ZipFile zipFile)
Schließen Sie ein offenes ERROR(/ZipFile) und ignorieren Sie Ausnahmen.
|
static
File
|
createZip(File dir)
Dienstprogrammmethode zum Erstellen einer temporären Zip-Datei mit dem angegebenen Verzeichnis und
sämtliche Inhalte zu sehen.
|
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
sämtliche Inhalte zu sehen.
|
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
sämtliche Inhalte zu sehen.
|
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 TMP-Datei
|
static
void
|
extractZip(ZipFile zipFile, File destDir)
Dienstprogrammmethode zum Extrahieren des gesamten Inhalts der ZIP-Datei in das angegebene Verzeichnis
|
static
void
|
extractZip(ZipFile zipFile, File destDir, shouldExtract)
Dienstprogrammmethode zum Extrahieren des Inhalts der ZIP-Datei in das angegebene Verzeichnis
|
static
File
|
extractZipToTemp(File zipFile, String nameHint)
ZIP-Datei in ein temporäres Verzeichnis mit vorangestelltem String extrahieren
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, boolean useZip64)
Eine Liste mit {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen.
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset)
Eine Liste mit {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen.
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)
Eine Liste mit {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen.
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset, boolean useZip64)
Eine Liste mit {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen.
|
static
void
|
gzipFile(File file, File gzipFile)
Hilfsmethode zum Erstellen einer mit gzip komprimierten Version einer einzelnen Datei.
|
static
boolean
|
isZipFileValid(File zipFile, boolean thorough)
Dienstprogrammmethode, mit dem geprüft wird, ob eine ZIP-Datei beschädigt ist.
|
static
void
|
unzipPartialZipFile(File partialZip, File targetFile, CentralDirectoryInfo zipEntry, LocalFileHeader localFileHeader, long startOffset)
Extrahieren Sie eine einzelne angeforderte Datei aus einer teilweisen ZIP-Datei.
|
static
void
|
unzipPartialZipFolder(File targetFile, CentralDirectoryInfo zipEntry)
Extrahieren Sie den angeforderten Ordner aus einer unvollständigen ZIP-Datei und weisen Sie die entsprechenden Berechtigungen zu.
|
Öffentliche Konstruktoren
ZipUtil
public ZipUtil ()
Öffentliche Methoden
ZuZip hinzufügen
public static void addToZip (ZipOutputStream out,
File file,
relativePathSegs)
Fügt die angegebene Datei und ihre Inhalte rekursiv zu ZipOutputStream hinzu
Parameter |
out |
ZipOutputStream : die ERROR(/ZipOutputStream) |
file |
File : die ERROR(/File) , die dem Stream hinzugefügt werden sollen |
relativePathSegs |
: der relative Pfad der Datei, einschließlich Trennzeichen |
Ausgabe |
|
Datei konnte der ZIP-Datei nicht hinzugefügt werden |
applyBerechtigung
public static void applyPermission (File targetFile,
CentralDirectoryInfo zipEntry)
Wenden Sie die im zentralen Verzeichniseintrag konfigurierte Dateiberechtigung an.
Parameter |
targetFile |
File : ERROR(/File) , für das die Berechtigung festgelegt werden soll. |
zipEntry |
CentralDirectoryInfo : Ein CentralDirectoryInfo -Objekt, das die Dateiberechtigungen enthält. |
Ausgabe |
|
wenn auf die Datei nicht zugegriffen werden kann. |
CloseZip
public static void closeZip (ZipFile zipFile)
Schließen Sie ein offenes ERROR(/ZipFile)
und ignorieren Sie Ausnahmen.
Parameter |
zipFile |
ZipFile : die zu schließende Datei |
Zip-Datei erstellen
public static File createZip (File dir)
Dienstprogrammmethode zum Erstellen einer temporären Zip-Datei mit dem angegebenen Verzeichnis und
sämtliche Inhalte zu sehen.
Parameter |
dir |
File : das Verzeichnis, das gezippt werden soll |
Returns |
File |
eine temporäre ZIP-Datei ERROR(/File) mit Verzeichnisinhalten |
Ausgabe |
|
Fehler beim Erstellen der ZIP-Datei |
Zip-Datei erstellen
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 ZIP-Datei, die ohne die Erweiterung erstellt wurde. |
Returns |
File |
eine temporäre ZIP-Datei ERROR(/File) mit Verzeichnisinhalten |
Ausgabe |
|
Fehler beim Erstellen der ZIP-Datei |
Zip-Datei erstellen
public static File createZip (File dir,
String name)
Dienstprogrammmethode zum Erstellen einer temporären Zip-Datei mit dem angegebenen Verzeichnis und
sämtliche Inhalte zu sehen.
Parameter |
dir |
File : das Verzeichnis, das gezippt werden soll |
name |
String : der Basisname der ZIP-Datei, die ohne die Erweiterung erstellt wurde. |
Returns |
File |
eine temporäre ZIP-Datei ERROR(/File) mit Verzeichnisinhalten |
Ausgabe |
|
Fehler beim Erstellen der ZIP-Datei |
Zip-Datei erstellen
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 |
eine temporäre ZIP-Datei ERROR(/File) mit Verzeichnisinhalten |
Ausgabe |
|
Fehler beim Erstellen der ZIP-Datei |
Zip-Datei erstellen
public static void createZip (File dir,
File zipFile)
Dienstprogrammmethode zum Erstellen einer ZIP-Datei mit dem angegebenen Verzeichnis und
sämtliche Inhalte zu sehen.
Parameter |
dir |
File : das Verzeichnis, das gezippt werden soll |
zipFile |
File : die zu erstellende ZIP-Datei. Sie sollte noch nicht vorhanden sein. |
Ausgabe |
|
Fehler beim Erstellen der ZIP-Datei |
Zip-Datei erstellen
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. Sie sollte noch nicht vorhanden sein. |
Ausgabe |
|
Fehler beim Erstellen der ZIP-Datei |
public static File extractFileFromZip (ZipFile zipFile,
String filePath)
Dienstprogrammmethode zum Extrahieren einer bestimmten Datei aus einer ZIP-Datei in eine TMP-Datei
Parameter |
zipFile |
ZipFile : die zu extrahierende ERROR(/ZipFile) |
filePath |
String : der zu extrahierende Dateipfad |
Ausgabe |
|
Datei konnte nicht extrahiert werden |
public static void extractZip (ZipFile zipFile,
File destDir)
Dienstprogrammmethode zum Extrahieren des gesamten Inhalts der ZIP-Datei in das angegebene Verzeichnis
Parameter |
zipFile |
ZipFile : die zu extrahierende ERROR(/ZipFile) |
destDir |
File : das lokale Verzeichnis, in das die Datei extrahiert werden soll |
Ausgabe |
|
Datei konnte nicht extrahiert werden |
public static void extractZip (ZipFile zipFile,
File destDir,
shouldExtract)
Dienstprogrammmethode zum Extrahieren des Inhalts der ZIP-Datei in das angegebene Verzeichnis
Parameter |
zipFile |
ZipFile : die zu extrahierende ERROR(/ZipFile) |
destDir |
File : das lokale Verzeichnis, in das die Datei extrahiert werden soll |
shouldExtract |
: das Prädikat, das abgeleitet werden soll, wenn ein ZipEntry extrahiert werden soll |
Ausgabe |
|
Datei konnte nicht extrahiert werden |
public static File extractZipToTemp (File zipFile,
String nameHint)
ZIP-Datei in ein temporäres Verzeichnis mit vorangestelltem String extrahieren
Parameter |
zipFile |
File : die zu extrahierende ZIP-Datei |
nameHint |
String : ein Präfix für das temporäre Verzeichnis |
Returns |
File |
ERROR(/File) , das auf das temporäre Verzeichnis verweist |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
boolean useZip64)
Eine Liste mit {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen.
Parameter |
partialZipFile |
File : ein ERROR(/File) -Objekt der Teil-ZIP-Datei, die den zentralen Bereich enthält
Verzeichniseinträgen. |
endCentralDirInfo |
EndCentralDirectoryInfo : ein EndCentralDirectoryInfo -Objekt der ZIP-Datei |
useZip64 |
boolean : ein boolescher Wert zur Unterstützung des Zip64-Formats bei Teildownloads |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
long offset)
Eine Liste mit {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen.
Parameter |
partialZipFile |
File : ein ERROR(/File) -Objekt der Teil-ZIP-Datei, die den zentralen Bereich enthält
Verzeichniseinträgen. |
endCentralDirInfo |
EndCentralDirectoryInfo : ein EndCentralDirectoryInfo -Objekt der ZIP-Datei |
offset |
long : der Versatz in der Teil-ZIP-Datei, in der der Inhalt des zentralen Verzeichnisses
beginnt. |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo)
Eine Liste mit {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen.
Parameter |
partialZipFile |
File : ein ERROR(/File) -Objekt der Teil-ZIP-Datei, die den zentralen Bereich enthält
Verzeichniseinträgen. |
endCentralDirInfo |
EndCentralDirectoryInfo : ein EndCentralDirectoryInfo -Objekt der ZIP-Datei |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
long offset,
boolean useZip64)
Eine Liste mit {link CentralDirectoryInfo} für Dateien in einer ZIP-Datei abrufen.
Parameter |
partialZipFile |
File : ein ERROR(/File) -Objekt der Teil-ZIP-Datei, die den zentralen Bereich enthält
Verzeichniseinträgen. |
endCentralDirInfo |
EndCentralDirectoryInfo : ein EndCentralDirectoryInfo -Objekt der ZIP-Datei |
offset |
long : der Versatz in der Teil-ZIP-Datei, in der der Inhalt des zentralen Verzeichnisses
beginnt. |
useZip64 |
boolean : ein boolescher Wert zur Unterstützung des Zip64-Formats bei Teildownloads |
gzip-Datei
public static void gzipFile (File file,
File gzipFile)
Hilfsmethode zum Erstellen einer mit gzip komprimierten Version einer einzelnen Datei.
Parameter |
file |
File : Originaldatei |
gzipFile |
File : Datei, in der komprimierte Inhalte abgelegt werden sollen |
isZipFileValid
public static boolean isZipFileValid (File zipFile,
boolean thorough)
Dienstprogrammmethode, mit dem geprüft wird, ob eine ZIP-Datei 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 ,
können CRC-Fehler in einem wohlgeformten Archiv nicht erkennen. |
Returns |
boolean |
false , wenn die Datei beschädigt ist. Andernfalls true |
Ausgabe |
|
Die Datei konnte nicht geöffnet oder gelesen werden. |
unzipPartialZipFile
public static void unzipPartialZipFile (File partialZip,
File targetFile,
CentralDirectoryInfo zipEntry,
LocalFileHeader localFileHeader,
long startOffset)
Extrahieren Sie eine einzelne angeforderte Datei aus einer teilweisen ZIP-Datei.
Bei dieser Methode wird davon ausgegangen, dass sich alle komprimierten Dateien auf demselben Laufwerk befinden.
Wenn ERROR(/targetFile)
ein Verzeichnis ist, wird ein leeres Verzeichnis ohne seine
Inhalte.
Wenn ERROR(/targetFile)
ein Symlink ist, wird ein Symlink erstellt, aber nicht aufgelöst.
Folgende Funktionen werden noch nicht unterstützt:
ZIP-Datei ist größer als 4 GB
ZIP64(Aktualisierung von ZipLocalFileHeader bei komprimierter Größe erforderlich)
Verschlüsselte ZIP-Datei
Parameter |
partialZip |
File : Eine ERROR(/File) , die ein Teil der ZIP-Datei ist. |
targetFile |
File : ERROR(/File) , in dem die extrahierte Datei gespeichert werden soll. |
zipEntry |
CentralDirectoryInfo : ein CentralDirectoryInfo -Objekt der Datei, das aus dem Teil extrahiert werden soll
ZIP-Datei. |
localFileHeader |
LocalFileHeader : Ein LocalFileHeader -Objekt der Datei, die aus dem extrahiert werden soll.
teilweise Zip-Datei. |
startOffset |
long : Startversatz der zu extrahierenden Datei. |
unzipPartialZipFolder
public static void unzipPartialZipFolder (File targetFile,
CentralDirectoryInfo zipEntry)
Extrahieren Sie den angeforderten Ordner aus einer unvollständigen ZIP-Datei und weisen Sie die entsprechenden Berechtigungen zu.
Parameter |
targetFile |
File : ERROR(/File) , in dem die extrahierte Datei gespeichert werden soll. |
zipEntry |
CentralDirectoryInfo : ein CentralDirectoryInfo -Objekt der Datei, das aus dem Teil extrahiert werden soll
ZIP-Datei. |
Geschützte Methoden
validDestinationDir
protected static void validateDestinationDir (File destDir,
String filename)
Parameter |
destDir |
File |
filename |
String |