ZipUtil
public
class
ZipUtil
extends Object
| java.lang.Object
|
| ↳ |
com.android.tradefed.util.ZipUtil
|
فئة مساعدة للعمليات ذات الصلة بالضغط
ملخّص
الإجراءات العامة |
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 إلى ملف مؤقت
|
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 إلى دليل مؤقت مسبوق بسلسلة
|
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)
طريقة مساعدة لإنشاء نسخة مضغوطة من ملف واحد
|
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 جزئي وطبِّق الإذن المناسب.
|
طُرق وضع التصميم العامة
ZipUtil
public ZipUtil ()
الإجراءات العامة
addToZip
public static void addToZip (ZipOutputStream out,
File file,
List<String> relativePathSegs)
تضيف هذه الطريقة بشكل متكرر الملف المحدد ومحتواه إلى ZipOutputStream
| المعلَمات |
out |
ZipOutputStream: ZipOutputStream |
file |
File: File المراد إضافته إلى البث |
relativePathSegs |
List: المسار النسبي للملف، بما في ذلك الفواصل |
| عمليات الطرح |
IOException |
إذا تعذّرت إضافة الملف إلى ملف zip |
applyPermission
public static void applyPermission (File targetFile,
CentralDirectoryInfo zipEntry)
تطبيق إذن الملف الذي تم ضبطه في إدخال الدليل المركزي
| المعلَمات |
targetFile |
استبدِل File بـ File لضبط الإذن. |
zipEntry |
CentralDirectoryInfo: عنصر CentralDirectoryInfo يحتوي على أذونات الملف. |
| عمليات الطرح |
IOException |
في حال تعذّر الوصول إلى الملف |
closeZip
public static void closeZip (ZipFile zipFile)
إغلاق ZipFile مفتوح، مع تجاهل أي استثناءات
| المعلَمات |
zipFile |
ZipFile: الملف المطلوب إغلاقه |
createZip
public static File createZip (File dir,
String name)
طريقة مساعدة لإنشاء ملف zip مؤقت يحتوي على الدليل المحدّد وجميع محتوياته.
| المعلَمات |
dir |
File: الدليل الذي سيتم ضغطه |
name |
استبدِل String بالاسم الأساسي لملف ZIP الذي تم إنشاؤه بدون الامتداد. |
| المرتجعات |
File |
ملف zip مؤقت File يحتوي على محتوى الدليل |
| عمليات الطرح |
IOException |
في حال تعذّر إنشاء ملف zip |
createZip
public static File createZip (File dir)
طريقة مساعدة لإنشاء ملف zip مؤقت يحتوي على الدليل المحدّد وجميع محتوياته.
| المعلَمات |
dir |
File: الدليل الذي سيتم ضغطه |
| المرتجعات |
File |
ملف zip مؤقت File يحتوي على محتوى الدليل |
| عمليات الطرح |
IOException |
في حال تعذّر إنشاء ملف zip |
createZip
public static File createZip (List<File> files)
طريقة مساعدة لإنشاء ملف zip مؤقت يحتوي على الملفات المحدّدة
| المعلَمات |
files |
List: قائمة الملفات التي سيتم ضغطها |
| المرتجعات |
File |
ملف zip مؤقت File يحتوي على محتوى الدليل |
| عمليات الطرح |
IOException |
في حال تعذّر إنشاء ملف zip |
createZip
public static File createZip (List<File> files,
String name)
طريقة مساعدة لإنشاء ملف ZIP مؤقت يحتوي على الملفات المحدّدة
| المعلَمات |
files |
List: قائمة الملفات التي سيتم ضغطها |
name |
استبدِل String بالاسم الأساسي لملف ZIP الذي تم إنشاؤه بدون الامتداد. |
| المرتجعات |
File |
ملف zip مؤقت File يحتوي على محتوى الدليل |
| عمليات الطرح |
IOException |
في حال تعذّر إنشاء ملف zip |
createZip
public static void createZip (List<File> files,
File zipFile)
طريقة مساعدة لإنشاء ملف ZIP يحتوي على الملفات المحدّدة
| المعلَمات |
files |
List: قائمة الملفات التي سيتم ضغطها |
zipFile |
File: ملف zip المطلوب إنشاؤه، ويجب ألا يكون موجودًا من قبل |
| عمليات الطرح |
IOException |
في حال تعذّر إنشاء ملف zip |
createZip
public static void createZip (File dir,
File zipFile)
طريقة مساعدة لإنشاء ملف zip يحتوي على الدليل المحدّد وجميع محتوياته.
| المعلَمات |
dir |
File: الدليل الذي سيتم ضغطه |
zipFile |
File: ملف zip المطلوب إنشاؤه، ويجب ألا يكون موجودًا من قبل |
| عمليات الطرح |
IOException |
في حال تعذّر إنشاء ملف zip |
public static File extractFileFromZip (ZipFile zipFile,
String filePath)
طريقة مساعدة لاستخراج ملف معيّن من ملف ZIP إلى ملف مؤقت
| المعلَمات |
zipFile |
ZipFile: ZipFile المطلوب استخراجه |
filePath |
String: مسار الملف المطلوب استخراجه |
| المرتجعات |
File |
File أو قيمة فارغة إذا لم يتم العثور على السمة |
| عمليات الطرح |
IOException |
في حال تعذّر استخراج الملف |
public static void extractZip (ZipFile zipFile,
File destDir)
طريقة مساعدة لاستخراج محتوى ملف ZIP بالكامل إلى الدليل المحدّد
| المعلَمات |
zipFile |
ZipFile: ZipFile المطلوب استخراجه |
destDir |
File: المجلد المحلي الذي سيتم استخراج الملف إليه |
| عمليات الطرح |
IOException |
في حال تعذّر استخراج الملف |
public static void extractZip (ZipFile zipFile,
File destDir,
Predicate<ZipEntry> shouldExtract)
طريقة مساعدة لاستخراج محتويات ملف ZIP إلى الدليل المحدّد
| المعلَمات |
zipFile |
ZipFile: ZipFile المطلوب استخراجه |
destDir |
File: المجلد المحلي الذي سيتم استخراج الملف إليه |
shouldExtract |
Predicate: الدالة المنطقية لتحديد ما إذا كان يجب استخراج ZipEntry |
| عمليات الطرح |
IOException |
في حال تعذّر استخراج الملف |
public static File extractZipToTemp (File zipFile,
String nameHint)
استخراج ملف zip إلى دليل مؤقت مسبوق بسلسلة
| المعلَمات |
zipFile |
File: ملف zip المطلوب استخراجه |
nameHint |
String: بادئة لدليل temp |
| المرتجعات |
File |
File يشير إلى الدليل المؤقت |
| عمليات الطرح |
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 في التنزيل الجزئي. |
| عمليات الطرح |
|
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. |
| عمليات الطرح |
|
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 في التنزيل الجزئي. |
| عمليات الطرح |
|
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 الجزئي حيث يبدأ محتوى إدخالات الدليل المركزي. |
| عمليات الطرح |
|
java.io.IOException |
IOException |
|
gzipFile
public static void gzipFile (File file,
File gzipFile)
طريقة مساعدة لإنشاء نسخة مضغوطة من ملف واحد
| المعلَمات |
file |
File: الملف الأصلي |
gzipFile |
File: الملف الذي سيتم وضع المحتوى المضغوط فيه |
| عمليات الطرح |
|
java.io.IOException |
IOException |
|
isZipFileValid
public static boolean isZipFileValid (File zipFile,
boolean thorough)
طريقة مساعدة للتحقّق من أنّ ملف zip غير تالف.
| المعلَمات |
zipFile |
File: File المطلوب التحقّق منه |
thorough |
boolean: لتحديد ما إذا كان سيتم محاولة استخراج الأرشيف بالكامل. إذا كان false، لن يتمكّن هذا الأسلوب من رصد أخطاء CRC في أرشيف منسَّق بشكل جيد. |
| المرتجعات |
boolean |
false إذا بدا الملف تالفًا، true في الحالات الأخرى |
| عمليات الطرح |
IOException |
إذا تعذّر فتح الملف أو قراءته |
unzipPartialZipFile
public static void unzipPartialZipFile (File partialZip,
File targetFile,
CentralDirectoryInfo zipEntry,
LocalFileHeader localFileHeader,
long startOffset)
استخراج ملف واحد مطلوب من ملف ZIP جزئي
يفترض هذا الأسلوب أنّ جميع الملفات موجودة على القرص نفسه عند ضغطها.
إذا كان ERROR(/targetFile) دليلاً، سيتم إنشاء دليل فارغ بدون محتواه.
إذا كان ERROR(/targetFile) رابطًا رمزيًا، سيتم إنشاء رابط رمزي ولكن لن يتم حله.
لا تتوفّر الميزات التالية بعد:
ملف ZIP أكبر من 4 غيغابايت
ZIP64(require ZipLocalFileHeader update on compressed size)
ملف ZIP مشفّر
| المعلَمات |
partialZip |
File: File وهو جزء من ملف zip. |
targetFile |
File: File لحفظ الملف المستخرَج فيه |
zipEntry |
CentralDirectoryInfo: عنصر CentralDirectoryInfo للملف الذي سيتم استخراجه من ملف zip الجزئي |
localFileHeader |
LocalFileHeader: عنصر LocalFileHeader للملف الذي سيتم استخراجه من ملف zip الجزئي. |
startOffset |
long: إزاحة بداية الملف المطلوب استخراجه |
| عمليات الطرح |
|
java.io.IOException |
IOException |
|
unzipPartialZipFolder
public static void unzipPartialZipFolder (File targetFile,
CentralDirectoryInfo zipEntry)
استخرِج المجلد المطلوب من ملف ZIP جزئي وطبِّق الإذن المناسب.
| المعلَمات |
targetFile |
File: File لحفظ الملف المستخرَج فيه |
zipEntry |
CentralDirectoryInfo: عنصر CentralDirectoryInfo للملف الذي سيتم استخراجه من ملف zip الجزئي |
| عمليات الطرح |
|
java.io.IOException |
IOException |
|
طُرق محمية
validateDestinationDir
protected static void validateDestinationDir (File destDir,
String filename)
| المعلَمات |
destDir |
File |
filename |
String |