ZipUtil
public
class
ZipUtil
extends Object
| java.lang.Object
|
| ↳ |
com.android.tradefed.util.ZipUtil
|
Classe d'assistance pour les opérations liées à la compression
Résumé
Méthodes publiques |
static
void
|
addToZip(ZipOutputStream out, File file, List<String> relativePathSegs)
Ajoute de manière récursive le fichier donné et son contenu à ZipOutputStream.
|
static
void
|
applyPermission(File targetFile, CentralDirectoryInfo zipEntry)
Appliquez l'autorisation de fichier configurée dans l'entrée du répertoire central.
|
static
void
|
closeZip(ZipFile zipFile)
Fermez un ZipFile ouvert, en ignorant les exceptions.
|
static
File
|
createZip(File dir, String name)
Méthode utilitaire permettant de créer un fichier ZIP temporaire contenant le répertoire donné et tout son contenu.
|
static
File
|
createZip(File dir)
Méthode utilitaire permettant de créer un fichier ZIP temporaire contenant le répertoire donné et tout son contenu.
|
static
File
|
createZip(List<File> files)
Méthode utilitaire permettant de créer un fichier ZIP temporaire contenant les fichiers spécifiés
|
static
File
|
createZip(List<File> files, String name)
Méthode utilitaire permettant de créer un fichier ZIP temporaire contenant les fichiers spécifiés.
|
static
void
|
createZip(List<File> files, File zipFile)
Méthode utilitaire permettant de créer un fichier ZIP contenant les fichiers spécifiés
|
static
void
|
createZip(File dir, File zipFile)
Méthode utilitaire permettant de créer un fichier ZIP contenant le répertoire donné et tout son contenu.
|
static
File
|
extractFileFromZip(ZipFile zipFile, String filePath)
Méthode utilitaire permettant d'extraire un fichier spécifique d'un fichier ZIP dans un fichier temporaire
|
static
void
|
extractZip(ZipFile zipFile, File destDir)
Méthode utilitaire permettant d'extraire l'intégralité du contenu du fichier ZIP dans le répertoire indiqué
|
static
void
|
extractZip(ZipFile zipFile, File destDir, Predicate<ZipEntry> shouldExtract)
Méthode utilitaire permettant d'extraire le contenu du fichier ZIP dans le répertoire indiqué
|
static
File
|
extractZipToTemp(File zipFile, String nameHint)
Extraire un fichier ZIP dans un répertoire temporaire précédé d'une chaîne
|
static
List<CentralDirectoryInfo>
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset, boolean useZip64)
Obtenez la liste des {link CentralDirectoryInfo} pour les fichiers d'un fichier ZIP.
|
static
List<CentralDirectoryInfo>
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)
Obtenez la liste des {link CentralDirectoryInfo} pour les fichiers d'un fichier ZIP.
|
static
List<CentralDirectoryInfo>
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, boolean useZip64)
Obtenez la liste des {link CentralDirectoryInfo} pour les fichiers d'un fichier ZIP.
|
static
List<CentralDirectoryInfo>
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset)
Obtenez la liste des {link CentralDirectoryInfo} pour les fichiers d'un fichier ZIP.
|
static
void
|
gzipFile(File file, File gzipFile)
Méthode d'assistance pour créer une version compressée d'un fichier unique.
|
static
boolean
|
isZipFileValid(File zipFile, boolean thorough)
Méthode utilitaire permettant de vérifier qu'un fichier ZIP n'est pas corrompu.
|
static
void
|
unzipPartialZipFile(File partialZip, File targetFile, CentralDirectoryInfo zipEntry, LocalFileHeader localFileHeader, long startOffset)
Extraire un seul fichier demandé à partir d'un fichier ZIP partiel
|
static
void
|
unzipPartialZipFolder(File targetFile, CentralDirectoryInfo zipEntry)
Extrayez le dossier demandé d'un fichier ZIP partiel et appliquez l'autorisation appropriée.
|
Constructeurs publics
ZipUtil
public ZipUtil ()
Méthodes publiques
addToZip
public static void addToZip (ZipOutputStream out,
File file,
List<String> relativePathSegs)
Ajoute de manière récursive le fichier donné et son contenu à ZipOutputStream.
| Paramètres |
out |
ZipOutputStream : ZipOutputStream |
file |
File : File à ajouter au flux |
relativePathSegs |
List : chemin d'accès relatif du fichier, y compris les séparateurs |
| Génère |
IOException |
si l'ajout du fichier au fichier ZIP échoue. |
applyPermission
public static void applyPermission (File targetFile,
CentralDirectoryInfo zipEntry)
Appliquez l'autorisation de fichier configurée dans l'entrée du répertoire central.
| Paramètres |
targetFile |
File : File pour laquelle définir l'autorisation. |
zipEntry |
CentralDirectoryInfo : objet CentralDirectoryInfo contenant les autorisations d'accès au fichier. |
| Génère |
IOException |
si vous ne parvenez pas à accéder au fichier. |
closeZip
public static void closeZip (ZipFile zipFile)
Fermez un ZipFile ouvert, en ignorant les exceptions.
| Paramètres |
zipFile |
ZipFile : fichier à fermer |
createZip
public static File createZip (File dir,
String name)
Méthode utilitaire permettant de créer un fichier ZIP temporaire contenant le répertoire donné et tout son contenu.
| Paramètres |
dir |
File : répertoire à compresser |
name |
String : nom de base du fichier zip créé sans l'extension. |
| Renvoie |
File |
un fichier ZIP temporaire File contenant le contenu du répertoire. |
| Génère |
IOException |
en cas d'échec de la création du fichier ZIP ; |
createZip
public static File createZip (File dir)
Méthode utilitaire permettant de créer un fichier ZIP temporaire contenant le répertoire donné et tout son contenu.
| Paramètres |
dir |
File : répertoire à compresser |
| Renvoie |
File |
un fichier ZIP temporaire File contenant le contenu du répertoire. |
| Génère |
IOException |
en cas d'échec de la création du fichier ZIP ; |
createZip
public static File createZip (List<File> files)
Méthode utilitaire permettant de créer un fichier ZIP temporaire contenant les fichiers spécifiés
| Paramètres |
files |
List : liste des fichiers à compresser |
| Renvoie |
File |
un fichier ZIP temporaire File contenant le contenu du répertoire. |
| Génère |
IOException |
en cas d'échec de la création du fichier ZIP ; |
createZip
public static File createZip (List<File> files,
String name)
Méthode utilitaire permettant de créer un fichier ZIP temporaire contenant les fichiers spécifiés.
| Paramètres |
files |
List : liste des fichiers à compresser |
name |
String : nom de base du fichier zip créé sans l'extension. |
| Renvoie |
File |
un fichier ZIP temporaire File contenant le contenu du répertoire. |
| Génère |
IOException |
en cas d'échec de la création du fichier ZIP ; |
createZip
public static void createZip (List<File> files,
File zipFile)
Méthode utilitaire permettant de créer un fichier ZIP contenant les fichiers spécifiés
| Paramètres |
files |
List : liste des fichiers à compresser |
zipFile |
File : fichier ZIP à créer (il ne doit pas déjà exister) |
| Génère |
IOException |
en cas d'échec de la création du fichier ZIP ; |
createZip
public static void createZip (File dir,
File zipFile)
Méthode utilitaire permettant de créer un fichier ZIP contenant le répertoire donné et tout son contenu.
| Paramètres |
dir |
File : répertoire à compresser |
zipFile |
File : fichier ZIP à créer (il ne doit pas déjà exister) |
| Génère |
IOException |
en cas d'échec de la création du fichier ZIP ; |
public static File extractFileFromZip (ZipFile zipFile,
String filePath)
Méthode utilitaire permettant d'extraire un fichier spécifique d'un fichier ZIP dans un fichier temporaire
| Paramètres |
zipFile |
ZipFile : ZipFile à extraire |
filePath |
String : chemin d'accès du fichier à extraire |
| Renvoie |
File |
File ou null si elle est introuvable |
| Génère |
IOException |
en cas d'échec de l'extraction du fichier. |
public static void extractZip (ZipFile zipFile,
File destDir)
Méthode utilitaire permettant d'extraire l'intégralité du contenu du fichier ZIP dans le répertoire indiqué
| Paramètres |
zipFile |
ZipFile : ZipFile à extraire |
destDir |
File : répertoire local dans lequel extraire le fichier |
| Génère |
IOException |
en cas d'échec de l'extraction du fichier. |
public static void extractZip (ZipFile zipFile,
File destDir,
Predicate<ZipEntry> shouldExtract)
Méthode utilitaire permettant d'extraire le contenu du fichier ZIP dans le répertoire indiqué
| Paramètres |
zipFile |
ZipFile : ZipFile à extraire |
destDir |
File : répertoire local dans lequel extraire le fichier |
shouldExtract |
Predicate : prédicat permettant de déterminer si une ZipEntry doit être extraite |
| Génère |
IOException |
en cas d'échec de l'extraction du fichier. |
public static File extractZipToTemp (File zipFile,
String nameHint)
Extraire un fichier ZIP dans un répertoire temporaire précédé d'une chaîne
| Paramètres |
zipFile |
File : fichier ZIP à extraire |
nameHint |
String : préfixe du répertoire temporaire |
| Renvoie |
File |
File pointant vers le répertoire temporaire |
| Génère |
IOException |
|
ZipException |
|
getZipCentralDirectoryInfos
public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
long offset,
boolean useZip64)
Obtenez la liste des {link CentralDirectoryInfo} pour les fichiers d'un fichier ZIP.
| Paramètres |
partialZipFile |
File : objet File du fichier ZIP partiel contenant les entrées de répertoire central. |
endCentralDirInfo |
EndCentralDirectoryInfo : objet EndCentralDirectoryInfo du fichier ZIP. |
offset |
long : décalage dans le fichier ZIP partiel où commence le contenu des entrées du répertoire central. |
useZip64 |
boolean : valeur booléenne permettant de prendre en charge le format zip64 lors du téléchargement partiel. |
| Génère |
|
java.io.IOException |
IOException |
|
getZipCentralDirectoryInfos
public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo)
Obtenez la liste des {link CentralDirectoryInfo} pour les fichiers d'un fichier ZIP.
| Paramètres |
partialZipFile |
File : objet File du fichier ZIP partiel contenant les entrées de répertoire central. |
endCentralDirInfo |
EndCentralDirectoryInfo : objet EndCentralDirectoryInfo du fichier ZIP. |
| Génère |
|
java.io.IOException |
IOException |
|
getZipCentralDirectoryInfos
public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
boolean useZip64)
Obtenez la liste des {link CentralDirectoryInfo} pour les fichiers d'un fichier ZIP.
| Paramètres |
partialZipFile |
File : objet File du fichier ZIP partiel contenant les entrées de répertoire central. |
endCentralDirInfo |
EndCentralDirectoryInfo : objet EndCentralDirectoryInfo du fichier ZIP. |
useZip64 |
boolean : valeur booléenne permettant de prendre en charge le format zip64 lors du téléchargement partiel. |
| Génère |
|
java.io.IOException |
IOException |
|
getZipCentralDirectoryInfos
public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
long offset)
Obtenez la liste des {link CentralDirectoryInfo} pour les fichiers d'un fichier ZIP.
| Paramètres |
partialZipFile |
File : objet File du fichier ZIP partiel contenant les entrées de répertoire central. |
endCentralDirInfo |
EndCentralDirectoryInfo : objet EndCentralDirectoryInfo du fichier ZIP. |
offset |
long : décalage dans le fichier ZIP partiel où commence le contenu des entrées du répertoire central. |
| Génère |
|
java.io.IOException |
IOException |
|
gzipFile
public static void gzipFile (File file,
File gzipFile)
Méthode d'assistance pour créer une version compressée d'un fichier unique.
| Paramètres |
file |
File : fichier d'origine |
gzipFile |
File : fichier dans lequel placer le contenu compressé |
| Génère |
|
java.io.IOException |
IOException |
|
isZipFileValid
public static boolean isZipFileValid (File zipFile,
boolean thorough)
Méthode utilitaire permettant de vérifier qu'un fichier ZIP n'est pas corrompu.
| Paramètres |
zipFile |
File : File à vérifier |
thorough |
boolean : indique si l'archive doit être entièrement extraite. Si la valeur est false, cette méthode ne détectera pas les erreurs CRC dans une archive bien formée. |
| Renvoie |
boolean |
false si le fichier semble corrompu, true dans le cas contraire |
| Génère |
IOException |
si le fichier n'a pas pu être ouvert ni lu ; |
unzipPartialZipFile
public static void unzipPartialZipFile (File partialZip,
File targetFile,
CentralDirectoryInfo zipEntry,
LocalFileHeader localFileHeader,
long startOffset)
Extraire un seul fichier demandé à partir d'un fichier ZIP partiel
Cette méthode suppose que tous les fichiers se trouvent sur le même disque lors de la compression.
Si ERROR(/targetFile) est un répertoire, un répertoire vide sera créé sans son contenu.
Si ERROR(/targetFile) est un lien symbolique, un lien symbolique sera créé, mais pas résolu.
Elle n'est pas encore compatible avec les fonctionnalités suivantes :
Fichier ZIP de plus de 4 Go
ZIP64(nécessite la mise à jour de ZipLocalFileHeader sur la taille compressée)
Fichier ZIP chiffré
| Paramètres |
partialZip |
File : File qui est une partie du fichier ZIP. |
targetFile |
File : File dans lequel enregistrer le fichier extrait. |
zipEntry |
CentralDirectoryInfo : objet CentralDirectoryInfo du fichier à extraire du fichier ZIP partiel. |
localFileHeader |
LocalFileHeader : objet LocalFileHeader du fichier à extraire du fichier ZIP partiel. |
startOffset |
long : décalage de début du fichier à extraire. |
| Génère |
|
java.io.IOException |
IOException |
|
unzipPartialZipFolder
public static void unzipPartialZipFolder (File targetFile,
CentralDirectoryInfo zipEntry)
Extrayez le dossier demandé d'un fichier ZIP partiel et appliquez l'autorisation appropriée.
| Paramètres |
targetFile |
File : File dans lequel enregistrer le fichier extrait. |
zipEntry |
CentralDirectoryInfo : objet CentralDirectoryInfo du fichier à extraire du fichier ZIP partiel. |
| Génère |
|
java.io.IOException |
IOException |
|
Méthodes protégées
validateDestinationDir
protected static void validateDestinationDir (File destDir,
String filename)
| Paramètres |
destDir |
File |
filename |
String |