ZipUtil

public class ZipUtil
extends Object

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


מחלקת עזר לפעולות שקשורות לדחיסה

סיכום

‫constructors ציבוריים

ZipUtil()

‫methods ציבוריים

static void addToZip(ZipOutputStream out, File file, List<String> relativePathSegs)

הפונקציה מוסיפה באופן רקורסיבי את הקובץ הנתון ואת התוכן שלו ל-ZipOutputStream

static void applyPermission(File targetFile, CentralDirectoryInfo zipEntry)

החלת הרשאת הקובץ שהוגדרה ברשומה של הספרייה המרכזית.

static void closeZip(ZipFile zipFile)

סגירה של ZipFile פתוח, תוך התעלמות מחריגים.

static File createZip(File dir, String name)

שיטת עזר ליצירת קובץ ZIP זמני שמכיל את הספרייה שצוינה ואת כל התוכן שלה.

static File createZip(File dir)

שיטת עזר ליצירת קובץ ZIP זמני שמכיל את הספרייה שצוינה ואת כל התוכן שלה.

static File createZip(List<File> files)

שיטת כלי עזר ליצירת קובץ ZIP זמני שמכיל את הקבצים הנתונים

static File createZip(List<File> files, String name)

שיטת כלי ליצירת קובץ ZIP זמני שמכיל את הקבצים שצוינו.

static void createZip(List<File> files, File zipFile)

שיטת כלי ליצירת קובץ ZIP שמכיל את הקבצים שצוינו

static void createZip(File dir, File zipFile)

שיטת עזר ליצירת קובץ ZIP שמכיל את הספרייה שצוינה ואת כל התוכן שלה.

static File extractFileFromZip(ZipFile zipFile, String filePath)

שיטת כלי עזר לחילוץ קובץ ספציפי מקובץ ZIP לקובץ tmp

static void extractZip(ZipFile zipFile, File destDir)

שיטת עזר לחילוץ כל התוכן של קובץ ZIP לספרייה נתונה

static void extractZip(ZipFile zipFile, File destDir, Predicate<ZipEntry> shouldExtract)

שיטת כלי עזר לחילוץ התוכן של קובץ ZIP לספרייה נתונה

static File extractZipToTemp(File zipFile, String nameHint)

חילוץ קובץ ZIP לספריית temp עם מחרוזת בתחילת השם

static List<CentralDirectoryInfo> getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset, boolean useZip64)

קבלת רשימה של {link CentralDirectoryInfo} עבור קבצים בקובץ ZIP.

static List<CentralDirectoryInfo> getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)

קבלת רשימה של {link CentralDirectoryInfo} עבור קבצים בקובץ ZIP.

static List<CentralDirectoryInfo> getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, boolean useZip64)

קבלת רשימה של {link CentralDirectoryInfo} עבור קבצים בקובץ ZIP.

static List<CentralDirectoryInfo> getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset)

קבלת רשימה של {link CentralDirectoryInfo} עבור קבצים בקובץ ZIP.

static void gzipFile(File file, File gzipFile)

שיטת עזר ליצירת גרסה דחוסה ב-gzip של קובץ יחיד.

static boolean isZipFileValid(File zipFile, boolean thorough)

שיטת עזר לאימות שקובץ ZIP לא פגום.

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

לחלץ קובץ יחיד שנדרש מקובץ ZIP חלקי.

static void unzipPartialZipFolder(File targetFile, CentralDirectoryInfo zipEntry)

מחלצים את התיקייה המבוקשת מקובץ ZIP חלקי ומחילים הרשאה מתאימה.

שיטות מוגנות

static void validateDestinationDir(File destDir, String filename)

‫constructors ציבוריים

ZipUtil

public ZipUtil ()

‫methods ציבוריים

addToZip

public static void addToZip (ZipOutputStream out, 
                File file, 
                List<String> relativePathSegs)

הפונקציה מוסיפה באופן רקורסיבי את הקובץ הנתון ואת התוכן שלו ל-ZipOutputStream

פרמטרים
out ZipOutputStream: ZipOutputStream

file File: File שרוצים להוסיף למקור הנתונים

relativePathSegs List: הנתיב היחסי של הקובץ, כולל מפרידים

הקפצת הודעות שגיאה (throw)
IOException אם הוספת הקובץ ל-zip נכשלה

applyPermission

public static void applyPermission (File targetFile, 
                CentralDirectoryInfo zipEntry)

החלת הרשאת הקובץ שהוגדרה ברשומה של הספרייה המרכזית.

פרמטרים
targetFile File: File להגדרת ההרשאה.

zipEntry CentralDirectoryInfo: אובייקט CentralDirectoryInfo שמכיל את הרשאות הגישה לקובץ.

הקפצת הודעות שגיאה (throw)
IOException אם לא ניתן לגשת לקובץ.

closeZip

public static void closeZip (ZipFile zipFile)

סגירה של ZipFile פתוח, תוך התעלמות מחריגים.

פרמטרים
zipFile ZipFile: הקובץ שרוצים לסגור

createZip

public static File createZip (File dir, 
                String name)

שיטת עזר ליצירת קובץ ZIP זמני שמכיל את הספרייה שצוינה ואת כל התוכן שלה.

פרמטרים
dir File: הספרייה שרוצים להוסיף לקובץ ZIP

name String: שם הבסיס של קובץ ה-ZIP שנוצר, בלי הסיומת.

החזרות
File קובץ ZIP זמני File שמכיל את התוכן של הספרייה

הקפצת הודעות שגיאה (throw)
IOException אם לא הצלחנו ליצור קובץ zip

createZip

public static File createZip (File dir)

שיטת עזר ליצירת קובץ ZIP זמני שמכיל את הספרייה שצוינה ואת כל התוכן שלה.

פרמטרים
dir File: הספרייה שרוצים להוסיף לקובץ ZIP

החזרות
File קובץ ZIP זמני File שמכיל את התוכן של הספרייה

הקפצת הודעות שגיאה (throw)
IOException אם לא הצלחנו ליצור קובץ zip

createZip

public static File createZip (List<File> files)

שיטת כלי עזר ליצירת קובץ ZIP זמני שמכיל את הקבצים הנתונים

פרמטרים
files List: רשימת הקבצים לדחיסה

החזרות
File קובץ ZIP זמני File שמכיל את התוכן של הספרייה

הקפצת הודעות שגיאה (throw)
IOException אם לא הצלחנו ליצור קובץ zip

createZip

public static File createZip (List<File> files, 
                String name)

שיטת כלי ליצירת קובץ ZIP זמני שמכיל את הקבצים שצוינו.

פרמטרים
files List: רשימת הקבצים לדחיסה

name String: שם הבסיס של קובץ ה-ZIP שנוצר, בלי הסיומת.

החזרות
File קובץ ZIP זמני File שמכיל את התוכן של הספרייה

הקפצת הודעות שגיאה (throw)
IOException אם לא הצלחנו ליצור קובץ zip

createZip

public static void createZip (List<File> files, 
                File zipFile)

שיטת כלי ליצירת קובץ ZIP שמכיל את הקבצים שצוינו

פרמטרים
files List: רשימת הקבצים לדחיסה

zipFile File: קובץ ה-ZIP שרוצים ליצור – הוא לא יכול להיות קיים כבר

הקפצת הודעות שגיאה (throw)
IOException אם לא הצלחנו ליצור קובץ zip

createZip

public static void createZip (File dir, 
                File zipFile)

שיטת עזר ליצירת קובץ ZIP שמכיל את הספרייה שצוינה ואת כל התוכן שלה.

פרמטרים
dir File: הספרייה שרוצים להוסיף לקובץ ZIP

zipFile File: קובץ ה-ZIP שרוצים ליצור – הוא לא יכול להיות קיים כבר

הקפצת הודעות שגיאה (throw)
IOException אם לא הצלחנו ליצור קובץ zip

extractFileFromZip

public static File extractFileFromZip (ZipFile zipFile, 
                String filePath)

שיטת כלי עזר לחילוץ קובץ ספציפי מקובץ ZIP לקובץ tmp

פרמטרים
zipFile ZipFile: ZipFile לחילוץ

filePath String: הנתיב של הקובץ לחילוץ

החזרות
File הערך File או null אם לא נמצא

הקפצת הודעות שגיאה (throw)
IOException אם חילוץ הקובץ נכשל

extractZip

public static void extractZip (ZipFile zipFile, 
                File destDir)

שיטת עזר לחילוץ כל התוכן של קובץ ZIP לספרייה נתונה

פרמטרים
zipFile ZipFile: ZipFile לחילוץ

destDir File: ספרייה מקומית לחילוץ הקובץ

הקפצת הודעות שגיאה (throw)
IOException אם חילוץ הקובץ נכשל

extractZip

public static void extractZip (ZipFile zipFile, 
                File destDir, 
                Predicate<ZipEntry> shouldExtract)

שיטת כלי עזר לחילוץ התוכן של קובץ ZIP לספרייה נתונה

פרמטרים
zipFile ZipFile: ZipFile לחילוץ

destDir File: ספרייה מקומית לחילוץ הקובץ

shouldExtract Predicate: פרדיקט לקביעה אם צריך לחלץ ZipEntry

הקפצת הודעות שגיאה (throw)
IOException אם חילוץ הקובץ נכשל

extractZipToTemp

public static File extractZipToTemp (File zipFile, 
                String nameHint)

חילוץ קובץ ZIP לספריית temp עם מחרוזת בתחילת השם

פרמטרים
zipFile File: קובץ ה-ZIP לחילוץ

nameHint String: קידומת לתיקיית הזמני

החזרות
File File שמצביע על ספריית הזמני

הקפצת הודעות שגיאה (throw)
IOException
ZipException

getZipCentralDirectoryInfos

public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo, 
                long offset, 
                boolean useZip64)

קבלת רשימה של {link CentralDirectoryInfo} עבור קבצים בקובץ ZIP.

פרמטרים
partialZipFile File: אובייקט File של קובץ ה-ZIP החלקי שמכיל רשומות של ספרייה מרכזית.

endCentralDirInfo EndCentralDirectoryInfo: אובייקט EndCentralDirectoryInfo של קובץ ה-ZIP.

offset long: ההיסט בקובץ ה-ZIP החלקי שבו מתחיל התוכן של רשומות הספרייה המרכזית.

useZip64 boolean: ערך בוליאני לתמיכה בפורמט zip64 בהורדה חלקית.

החזרות
List<CentralDirectoryInfo> רשימה של CentralDirectoryInfo בקובץ ה-ZIP

הקפצת הודעות שגיאה (throw)
java.io.IOException
IOException

getZipCentralDirectoryInfos

public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo)

קבלת רשימה של {link CentralDirectoryInfo} עבור קבצים בקובץ ZIP.

פרמטרים
partialZipFile File: אובייקט File של קובץ ה-ZIP החלקי שמכיל רשומות של ספרייה מרכזית.

endCentralDirInfo EndCentralDirectoryInfo: אובייקט EndCentralDirectoryInfo של קובץ ה-ZIP.

החזרות
List<CentralDirectoryInfo> רשימה של CentralDirectoryInfo בקובץ ה-ZIP

הקפצת הודעות שגיאה (throw)
java.io.IOException
IOException

getZipCentralDirectoryInfos

public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo, 
                boolean useZip64)

קבלת רשימה של {link CentralDirectoryInfo} עבור קבצים בקובץ ZIP.

פרמטרים
partialZipFile File: אובייקט File של קובץ ה-ZIP החלקי שמכיל רשומות של ספרייה מרכזית.

endCentralDirInfo EndCentralDirectoryInfo: אובייקט EndCentralDirectoryInfo של קובץ ה-ZIP.

useZip64 boolean: ערך בוליאני לתמיכה בפורמט zip64 בהורדה חלקית.

החזרות
List<CentralDirectoryInfo> רשימה של CentralDirectoryInfo בקובץ ה-ZIP

הקפצת הודעות שגיאה (throw)
java.io.IOException
IOException

getZipCentralDirectoryInfos

public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo, 
                long offset)

קבלת רשימה של {link CentralDirectoryInfo} עבור קבצים בקובץ ZIP.

פרמטרים
partialZipFile File: אובייקט File של קובץ ה-ZIP החלקי שמכיל רשומות של ספרייה מרכזית.

endCentralDirInfo EndCentralDirectoryInfo: אובייקט EndCentralDirectoryInfo של קובץ ה-ZIP.

offset long: ההיסט בקובץ ה-ZIP החלקי שבו מתחיל התוכן של רשומות הספרייה המרכזית.

החזרות
List<CentralDirectoryInfo> רשימה של CentralDirectoryInfo בקובץ ה-ZIP

הקפצת הודעות שגיאה (throw)
java.io.IOException
IOException

gzipFile

public static void gzipFile (File file, 
                File gzipFile)

שיטת עזר ליצירת גרסה דחוסה ב-gzip של קובץ יחיד.

פרמטרים
file File: הקובץ המקורי

gzipFile File: הקובץ שבו ימוקם התוכן הדחוס

הקפצת הודעות שגיאה (throw)
java.io.IOException
IOException

isZipFileValid

public static boolean isZipFileValid (File zipFile, 
                boolean thorough)

שיטת עזר לאימות שקובץ ZIP לא פגום.

פרמטרים
zipFile File: File לבדיקה

thorough boolean: האם לנסות לחלץ את הארכיון באופן מלא. אם false, השיטה הזו לא תזהה שגיאות CRC בארכיון עם מבנה תקין.

החזרות
boolean false if the file appears to be corrupt; true otherwise

הקפצת הודעות שגיאה (throw)
IOException אם אי אפשר לפתוח או לקרוא את הקובץ

unzipPartialZipFile

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

לחלץ קובץ יחיד שנדרש מקובץ ZIP חלקי.

בשיטה הזו מניחים שכל הקבצים נמצאים באותו דיסק כשהם דחוסים.

אם ERROR(/targetFile) היא ספרייה, תיווצר ספרייה ריקה בלי התוכן שלה.

אם ERROR(/targetFile) הוא קישור סמלי, ייווצר קישור סמלי אבל הוא לא ייפתר.

הוא עדיין לא תומך בתכונות הבאות:

קובץ ZIP גדול מ-4GB

‫ZIP64(נדרש עדכון של ZipLocalFileHeader בגודל הדחוס)

קובץ ZIP מוצפן

פרמטרים
partialZip File: File שהוא חלק מקובץ ה-ZIP.

targetFile File: הנתיב File לשמירת הקובץ שחולץ.

zipEntry CentralDirectoryInfo: אובייקט CentralDirectoryInfo של הקובץ לחילוץ מקובץ ה-zip החלקי.

localFileHeader LocalFileHeader: אובייקט LocalFileHeader של הקובץ לחילוץ מקובץ ה-ZIP החלקי.

startOffset long: היסטור התחלה של הקובץ לחילוץ.

הקפצת הודעות שגיאה (throw)
java.io.IOException
IOException

unzipPartialZipFolder

public static void unzipPartialZipFolder (File targetFile, 
                CentralDirectoryInfo zipEntry)

מחלצים את התיקייה המבוקשת מקובץ ZIP חלקי ומחילים הרשאה מתאימה.

פרמטרים
targetFile File: הנתיב File לשמירת הקובץ שחולץ.

zipEntry CentralDirectoryInfo: אובייקט CentralDirectoryInfo של הקובץ לחילוץ מקובץ ה-zip החלקי.

הקפצת הודעות שגיאה (throw)
java.io.IOException
IOException

שיטות מוגנות

validateDestinationDir

protected static void validateDestinationDir (File destDir, 
                String filename)

פרמטרים
destDir File

filename String

הקפצת הודעות שגיאה (throw)
IOException