ZipUtil

public class ZipUtil
extends Object

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


فئة مساعدة للعمليات ذات الصلة بالضغط

ملخّص

وظائف الإنشاء العامة

ZipUtil()

الطرق العامة

static void addToZip(ZipOutputStream out, File file, relativePathSegs)

تُضيف بشكل متكرر الملف المحدّد ومحتوياته إلى ZipOutputStream

static void applyPermission(File targetFile, CentralDirectoryInfo zipEntry)

تطبيق إذن الملف الذي تم ضبطه في إدخال الدليل المركزي

static void closeZip(ZipFile zipFile)

إغلاق ERROR(/ZipFile) مفتوح، مع تجاهل أي استثناءات

static File createZip(File dir)

طريقة مساعدة لإنشاء ملف zip مؤقت يحتوي على الدليل المحدّد وجميع محتوياته.

static File createZip( files, String name)

طريقة مساعدة لإنشاء ملف مضغوط مؤقت يحتوي على الملفات المحدّدة.

static File createZip(File dir, String name)

طريقة مساعدة لإنشاء ملف zip مؤقت يحتوي على الدليل المحدّد وجميع محتوياته.

static File createZip( files)

طريقة مساعدة لإنشاء ملف مضغوط مؤقت يحتوي على الملفات المحدّدة

static void createZip(File dir, File zipFile)

طريقة مساعدة لإنشاء ملف zip يتضمّن الدليل المحدّد وكل محتوياته

static void createZip( files, 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, shouldExtract)

طريقة مساعدة لاستخراج محتوى ملف zip في دليل معيّن

static File extractZipToTemp(File zipFile, String nameHint)

استخراج ملف zip إلى دليل مؤقت مسبوق بسلسلة

static getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, boolean useZip64)

الحصول على قائمة {link CentralDirectoryInfo} للملفات في ملف zip

static getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset)

الحصول على قائمة {link CentralDirectoryInfo} للملفات في ملف zip

static getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)

الحصول على قائمة {link CentralDirectoryInfo} للملفات في ملف zip

static getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset, boolean useZip64)

الحصول على قائمة {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)

وظائف الإنشاء العامة

ZipUtil

public ZipUtil ()

الطرق العامة

addToZip

public static void addToZip (ZipOutputStream out, 
                File file, 
                 relativePathSegs)

تُضيف بشكل متكرر الملف المحدَّد ومحتوياته إلى ZipOutputStream

المعلمات
out ZipOutputStream: ERROR(/ZipOutputStream)

file File: ERROR(/File) المطلوب إضافته إلى البث

relativePathSegs : المسار النسبي للملف، بما في ذلك الفواصل

عمليات الرمي
في حال تعذّر إضافة ملف إلى ملف zip

applyPermission

public static void applyPermission (File targetFile, 
                CentralDirectoryInfo zipEntry)

تطبيق إذن الملف الذي تم ضبطه في إدخال الدليل المركزي

المعلمات
targetFile File: ERROR(/File) لضبط الإذن عليه

zipEntry CentralDirectoryInfo: عنصر CentralDirectoryInfo يحتوي على أذونات الملف

عمليات الرمي
في حال تعذّر الوصول إلى الملف

closeZip

public static void closeZip (ZipFile zipFile)

إغلاق ERROR(/ZipFile) مفتوح، مع تجاهل أي استثناءات

المعلمات
zipFile ZipFile: الملف المطلوب إغلاقه

createZip

public static File createZip (File dir)

طريقة مساعدة لإنشاء ملف zip مؤقت يحتوي على الدليل المحدّد وجميع محتوياته.

المعلمات
dir File: الدليل الذي سيتم ضغطه

المرتجعات
File ملف zip مؤقت ERROR(/File) يحتوي على محتوى الدليل

عمليات الرمي
في حال تعذّر إنشاء ملف zip

createZip

public static File createZip ( files, 
                String name)

طريقة مساعدة لإنشاء ملف مضغوط مؤقت يحتوي على الملفات المحدّدة.

المعلمات
files : قائمة الملفات المطلوب ضغطها

name String: الاسم الأساسي لملف zip الذي تم إنشاؤه بدون الإضافة

المرتجعات
File ملف zip مؤقت ERROR(/File) يحتوي على محتوى الدليل

عمليات الرمي
في حال تعذّر إنشاء ملف zip

createZip

public static File createZip (File dir, 
                String name)

طريقة مساعدة لإنشاء ملف zip مؤقت يحتوي على الدليل المحدّد وجميع محتوياته.

المعلمات
dir File: الدليل الذي سيتم ضغطه

name String: الاسم الأساسي لملف zip الذي تم إنشاؤه بدون الإضافة

المرتجعات
File ملف zip مؤقت ERROR(/File) يحتوي على محتوى الدليل

عمليات الرمي
في حال تعذّر إنشاء ملف zip

createZip

public static File createZip ( files)

طريقة مساعدة لإنشاء ملف مضغوط مؤقت يحتوي على الملفات المحدّدة

المعلمات
files : قائمة الملفات المطلوب ضغطها

المرتجعات
File ملف zip مؤقت ERROR(/File) يحتوي على محتوى الدليل

عمليات الرمي
في حال تعذّر إنشاء ملف zip

createZip

public static void createZip (File dir, 
                File zipFile)

طريقة مساعدة لإنشاء ملف zip يتضمّن الدليل المحدّد وكل محتوياته

المعلمات
dir File: الدليل الذي سيتم ضغطه

zipFile File: ملف zip المطلوب إنشاؤه، ويجب ألا يكون متوفّرًا

عمليات الرمي
في حال تعذّر إنشاء ملف zip

createZip

public static void createZip ( files, 
                File zipFile)

طريقة مساعدة لإنشاء ملف zip يحتوي على الملفات المحدّدة

المعلمات
files : قائمة الملفات المطلوب ضغطها

zipFile File: ملف zip المطلوب إنشاؤه، ويجب ألا يكون متوفّرًا

عمليات الرمي
في حال تعذّر إنشاء ملف zip

extractFileFromZip

public static File extractFileFromZip (ZipFile zipFile, 
                String filePath)

طريقة مساعدة لاستخراج ملف واحد محدّد من ملف zip إلى ملف tmp

المعلمات
zipFile ZipFile: ERROR(/ZipFile) المطلوب استخراجه

filePath String: filePath المطلوب استخراجه

المرتجعات
File ERROR(/File) أو القيمة الخالية إذا لم يتم العثور على القيمة

عمليات الرمي
في حال تعذّر استخراج الملف

extractZip

public static void extractZip (ZipFile zipFile, 
                File destDir)

طريقة مساعدة لاستخراج محتوى ملف zip بالكامل في دليل معيّن

المعلمات
zipFile ZipFile: ERROR(/ZipFile) المطلوب استخراجه

destDir File: الدليل المحلي لاستخراج الملف إليه

عمليات الرمي
في حال تعذّر استخراج الملف

extractZip

public static void extractZip (ZipFile zipFile, 
                File destDir, 
                 shouldExtract)

طريقة مساعدة لاستخراج محتوى ملف zip في دليل معيّن

المعلمات
zipFile ZipFile: ERROR(/ZipFile) المطلوب استخراجه

destDir File: الدليل المحلي لاستخراج الملف إليه

shouldExtract : العبارة لتحديد ما إذا كان يجب استخراج ZipEntry

عمليات الرمي
في حال تعذّر استخراج الملف

extractZipToTemp

public static File extractZipToTemp (File zipFile, 
                String nameHint)

استخراج ملف zip إلى دليل مؤقت مسبوق بسلسلة

المعلمات
zipFile File: ملف zip المطلوب استخراجه

nameHint String: بادئة للدليل المؤقت

المرتجعات
File ERROR(/File) يشير إلى الدليل المؤقت

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo, 
                boolean useZip64)

الحصول على قائمة {link CentralDirectoryInfo} للملفات في ملف zip

المعلمات
partialZipFile File: عنصر ERROR(/File) لملف zip الجزئي الذي يحتوي على إدخالات دليل central

endCentralDirInfo EndCentralDirectoryInfo: عنصر EndCentralDirectoryInfo من ملف zip

useZip64 boolean: قيمة منطقية لتفعيل تنسيق zip64 في التنزيل الجزئي

المرتجعات
قائمة بـ CentralDirectoryInfo من ملف ZIP

عمليات الرمي
IOException

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo, 
                long offset)

الحصول على قائمة {link CentralDirectoryInfo} للملفات في ملف zip

المعلمات
partialZipFile File: عنصر ERROR(/File) لملف zip الجزئي الذي يحتوي على إدخالات دليل central

endCentralDirInfo EndCentralDirectoryInfo: عنصر EndCentralDirectoryInfo من ملف zip

offset long: الإزاحة في ملف ZIP الجزئي حيث يبدأ محتوى إدخالات directory المركزية

المرتجعات
قائمة CentralDirectoryInfo من ملف ZIP

عمليات الرمي
IOException

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo)

الحصول على قائمة {link CentralDirectoryInfo} للملفات في ملف zip

المعلمات
partialZipFile File: عنصر ERROR(/File) لملف zip الجزئي الذي يحتوي على إدخالات دليل central

endCentralDirInfo EndCentralDirectoryInfo: عنصر EndCentralDirectoryInfo من ملف zip

المرتجعات
قائمة CentralDirectoryInfo من ملف ZIP

عمليات الرمي
IOException

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo, 
                long offset, 
                boolean useZip64)

الحصول على قائمة {link CentralDirectoryInfo} للملفات في ملف zip

المعلمات
partialZipFile File: عنصر ERROR(/File) لملف zip الجزئي الذي يحتوي على إدخالات دليل مركزي

endCentralDirInfo EndCentralDirectoryInfo: عنصر EndCentralDirectoryInfo من ملف zip

offset long: الإزاحة في ملف ZIP الجزئي حيث يبدأ محتوى إدخالات directory المركزية

useZip64 boolean: قيمة منطقية لتفعيل تنسيق zip64 في التنزيل الجزئي

المرتجعات
قائمة بـ CentralDirectoryInfo من ملف ZIP

عمليات الرمي
IOException

gzipFile

public static void gzipFile (File file, 
                File gzipFile)

طريقة مساعدة لإنشاء نسخة مضغوطة بتنسيق gzip من ملف واحد

المعلمات
file File: الملف الأصلي

gzipFile File: الملف الذي سيتم وضع المحتوى المضغوط فيه

عمليات الرمي
IOException

isZipFileValid

public static boolean isZipFileValid (File zipFile, 
                boolean thorough)

طريقة مساعدة للتحقّق من أنّ ملف zip ليس تالفًا

المعلمات
zipFile File: ERROR(/File) للتحقّق من

thorough boolean: يشير ذلك إلى ما إذا كان سيتم محاولة استخراج الأرشيف بالكامل. إذا كان false، لن تتمكّن هذه المحاولة من رصد أخطاء تجزئة CRC في أرشيف منسَّق بشكل جيد.

المرتجعات
boolean false إذا بدا أنّ الملف تالف true في غير ذلك

عمليات الرمي
إذا تعذّر فتح الملف أو قراءته

unzipPartialZipFile

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

استخراج ملف واحد مطلوب من ملف zip جزئي

تفترض هذه الطريقة أنّ جميع الملفات موجودة على القرص نفسه عند ضغطها.

إذا كان ERROR(/targetFile) دليلاً، سيتم إنشاء دليل فارغ بدون محتوياته.

إذا كان ERROR(/targetFile) رابطًا تشعبيًا، سيتم إنشاء رابط تشعبي ولكن لن يتم حلّه.

لا تتوفّر الميزات التالية بعد:

ملف ZIP أكبر من 4 غيغابايت

‫ZIP64(يتطلب تعديل ZipLocalFileHeader على الحجم المضغوط)

ملف zip مشفَّر

المعلمات
partialZip File: ERROR(/File) التي تشكّل جزءًا من ملف zip

targetFile File: ERROR(/File) لحفظ الملف المستخرَج فيه

zipEntry CentralDirectoryInfo: عنصر CentralDirectoryInfo للملف المطلوب استخراجه من ملف zip المجزأ

localFileHeader LocalFileHeader: عنصر LocalFileHeader للملف المطلوب استخراجه من ملف zip الجزئي

startOffset long: بدء التقديم أو الإيقاف للملف المطلوب استخراجه.

عمليات الرمي
IOException

unzipPartialZipFolder

public static void unzipPartialZipFolder (File targetFile, 
                CentralDirectoryInfo zipEntry)

استخرِج المجلد المطلوب من ملف zip جزئي وطبِّق الإذن المناسب.

المعلمات
targetFile File: ERROR(/File) لحفظ الملف المستخرَج فيه

zipEntry CentralDirectoryInfo: عنصر CentralDirectoryInfo للملف المطلوب استخراجه من ملف zip المجزأ

عمليات الرمي
IOException

الطرق المحمية

validateDestinationDir

protected static void validateDestinationDir (File destDir, 
                String filename)

المعلمات
destDir File

filename String