ZipUtil

public class ZipUtil
extends Object

java.lang.object
com.android.tradefed.util.ZipUtil


یک کلاس کمکی برای عملیات مربوط به فشرده سازی

خلاصه

سازندگان عمومی

ZipUtil ()

روش های عمومی

static void addToZip (ZipOutputStream out, File file, relativePathSegs) 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)

روش کاربردی برای ایجاد یک فایل فشرده موقت حاوی دایرکتوری داده شده و تمام محتویات آن.

static File createZip ( files, String name) createZip ( files, String name)

روش ابزار برای ایجاد یک فایل فشرده موقت حاوی فایل های داده شده.

static File createZip (File dir, String name)

روش کاربردی برای ایجاد یک فایل فشرده موقت حاوی دایرکتوری داده شده و تمام محتویات آن.

static File createZip ( files) createZip ( files)

روش ابزار برای ایجاد یک فایل فشرده موقت حاوی فایل های داده شده

static void createZip (File dir, File zipFile)

روش کاربردی برای ایجاد یک فایل فشرده حاوی دایرکتوری داده شده و تمام محتویات آن.

static void createZip ( files, File zipFile) createZip ( files, File zipFile)

روش کاربردی برای ایجاد یک فایل فشرده حاوی فایل های داده شده

static File extractFileFromZip (ZipFile zipFile, String filePath)

روش کاربردی برای استخراج یک فایل خاص از فایل فشرده به یک فایل tmp

static void extractZip (ZipFile zipFile, File destDir)

روش سودمند برای استخراج کل محتویات فایل فشرده در فهرست داده شده

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

روش سودمند برای استخراج محتویات فایل فشرده در فهرست داده شده

static File extractZipToTemp (File zipFile, String nameHint)

یک فایل فشرده را به یک فهرست موقت که با یک رشته اضافه شده است، استخراج کنید

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

فهرستی از {link CentralDirectoryInfo} را برای فایل‌های موجود در یک فایل فشرده دریافت کنید.

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

فهرستی از {link CentralDirectoryInfo} را برای فایل‌های موجود در یک فایل فشرده دریافت کنید.

static getZipCentralDirectoryInfos (File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)

فهرستی از {link CentralDirectoryInfo} را برای فایل‌های موجود در یک فایل فشرده دریافت کنید.

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

فهرستی از {link CentralDirectoryInfo} را برای فایل‌های موجود در یک فایل فشرده دریافت کنید.

static void gzipFile (File file, File gzipFile)

روش کمکی برای ایجاد یک نسخه gzip شده از یک فایل.

static boolean isZipFileValid (File zipFile, boolean thorough)

روش کاربردی برای تأیید اینکه فایل فشرده خراب نیست.

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

یک فایل درخواستی را از یک فایل فشرده جزئی استخراج کنید.

static void unzipPartialZipFolder (File targetFile, CentralDirectoryInfo zipEntry)

پوشه درخواستی را از یک فایل فشرده جزئی استخراج کنید و مجوز مناسب را اعمال کنید.

روش های محافظت شده

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 اضافه کند

درخواست مجوز

public static void applyPermission (File targetFile, 
                CentralDirectoryInfo zipEntry)

مجوز فایل پیکربندی شده در ورودی دایرکتوری مرکزی را اعمال کنید.

پارامترها
targetFile File : ERROR(/File) برای تنظیم مجوز.

zipEntry CentralDirectoryInfo : یک شی CentralDirectoryInfo که حاوی مجوزهای فایل است.

پرتاب می کند
در صورت عدم دسترسی به فایل

بستن زیپ

public static void closeZip (ZipFile zipFile)

یک ERROR(/ZipFile) باز را ببندید و استثنائات را نادیده بگیرید.

پارامترها
zipFile ZipFile : فایلی که باید بسته شود

createZip

public static File createZip (File dir)

روش کاربردی برای ایجاد یک فایل فشرده موقت حاوی دایرکتوری داده شده و تمام محتویات آن.

پارامترها
dir File : دایرکتوری برای فشرده سازی

برمی گرداند
File یک فایل فشرده ERROR(/File) موقت حاوی محتویات دایرکتوری

پرتاب می کند
اگر موفق به ایجاد فایل فشرده نشدید

createZip

public static File createZip ( files, 
                String name)

روش ابزار برای ایجاد یک فایل فشرده موقت حاوی فایل های داده شده.

پارامترها
files : لیست فایل های فشرده

name String : نام پایه فایل فشرده ایجاد شده بدون پسوند.

برمی گرداند
File یک فایل فشرده ERROR(/File) موقت حاوی محتویات دایرکتوری

پرتاب می کند
اگر موفق به ایجاد فایل فشرده نشدید

createZip

public static File createZip (File dir, 
                String name)

روش کاربردی برای ایجاد یک فایل فشرده موقت حاوی دایرکتوری داده شده و تمام محتویات آن.

پارامترها
dir File : دایرکتوری برای فشرده سازی

name String : نام پایه فایل فشرده ایجاد شده بدون پسوند.

برمی گرداند
File یک فایل فشرده ERROR(/File) موقت حاوی محتویات دایرکتوری

پرتاب می کند
اگر موفق به ایجاد فایل فشرده نشدید

createZip

public static File createZip ( files)

روش ابزار برای ایجاد یک فایل فشرده موقت حاوی فایل های داده شده

پارامترها
files : لیست فایل های فشرده

برمی گرداند
File یک فایل فشرده ERROR(/File) موقت حاوی محتویات دایرکتوری

پرتاب می کند
اگر موفق به ایجاد فایل فشرده نشدید

ایجاد زیپ

public static void createZip (File dir, 
                File zipFile)

روش کاربردی برای ایجاد یک فایل فشرده حاوی دایرکتوری داده شده و تمام محتویات آن.

پارامترها
dir File : دایرکتوری برای فشرده سازی

zipFile File : فایل فشرده ای که باید ایجاد شود - از قبل نباید وجود داشته باشد

پرتاب می کند
اگر موفق به ایجاد فایل فشرده نشدید

ایجاد زیپ

public static void createZip ( files, 
                File zipFile)

روش کاربردی برای ایجاد یک فایل فشرده حاوی فایل های داده شده

پارامترها
files : لیست فایل های فشرده

zipFile File : فایل فشرده برای ایجاد - از قبل نباید وجود داشته باشد

پرتاب می کند
اگر موفق به ایجاد فایل فشرده نشدید

extractFileFromZip

public static File extractFileFromZip (ZipFile zipFile, 
                String filePath)

روش کاربردی برای استخراج یک فایل خاص از فایل فشرده به یک فایل tmp

پارامترها
zipFile ZipFile : ERROR(/ZipFile) برای استخراج

filePath String : مسیر فایل برای استخراج

برمی گرداند
File ERROR(/File) یا در صورت پیدا نشدن null

پرتاب می کند
اگر فایل استخراج نشد

استخراج زیپ

public static void extractZip (ZipFile zipFile, 
                File destDir)

روش سودمند برای استخراج کل محتویات فایل فشرده در فهرست داده شده

پارامترها
zipFile ZipFile : ERROR(/ZipFile) برای استخراج

destDir File : dir محلی برای استخراج فایل

پرتاب می کند
اگر فایل استخراج نشد

استخراج زیپ

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

روش سودمند برای استخراج محتویات فایل فشرده در فهرست داده شده

پارامترها
zipFile ZipFile : ERROR(/ZipFile) برای استخراج

destDir File : dir محلی برای استخراج فایل

shouldExtract : محمولی برای درمین اگر یک ZipEntry باید استخراج شود

پرتاب می کند
اگر فایل استخراج نشد

ExtractZipToTemp

public static File extractZipToTemp (File zipFile, 
                String nameHint)

یک فایل فشرده را به یک فهرست موقت که با یک رشته اضافه شده است، استخراج کنید

پارامترها
zipFile File : فایل فشرده برای استخراج

nameHint String : پیشوندی برای دایرکتوری temp

برمی گرداند
File یک ERROR(/File) که به دایرکتوری temp اشاره می کند

getZipCentralDirectoryInfos

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

فهرستی از {link CentralDirectoryInfo} را برای فایل‌های موجود در یک فایل فشرده دریافت کنید.

پارامترها
partialZipFile File : یک شیء ERROR(/File) از فایل فشرده جزئی که حاوی ورودی های دایرکتوری مرکزی است.

endCentralDirInfo EndCentralDirectoryInfo : یک شی EndCentralDirectoryInfo از فایل فشرده.

useZip64 boolean : یک بولی برای پشتیبانی از فرمت zip64 در دانلود جزئی.

برمی گرداند
لیستی از CentralDirectoryInfo فایل فشرده

پرتاب می کند
IOException

getZipCentralDirectoryInfos

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

فهرستی از {link CentralDirectoryInfo} را برای فایل‌های موجود در یک فایل فشرده دریافت کنید.

پارامترها
partialZipFile File : یک شیء ERROR(/File) از فایل فشرده جزئی که حاوی ورودی های دایرکتوری مرکزی است.

endCentralDirInfo EndCentralDirectoryInfo : یک شیء EndCentralDirectoryInfo از فایل فشرده.

offset long : افست در فایل فشرده جزئی که در آن محتوای ورودی های دایرکتوری مرکزی شروع می شود.

برمی گرداند
لیستی از CentralDirectoryInfo فایل فشرده

پرتاب می کند
IOException

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo)

فهرستی از {link CentralDirectoryInfo} را برای فایل‌های موجود در یک فایل فشرده دریافت کنید.

پارامترها
partialZipFile File : یک شیء ERROR(/File) از فایل فشرده جزئی که حاوی ورودی های دایرکتوری مرکزی است.

endCentralDirInfo EndCentralDirectoryInfo : یک شی EndCentralDirectoryInfo از فایل فشرده.

برمی گرداند
لیستی از CentralDirectoryInfo فایل فشرده

پرتاب می کند
IOException

getZipCentralDirectoryInfos

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

فهرستی از {link CentralDirectoryInfo} را برای فایل‌های موجود در یک فایل فشرده دریافت کنید.

پارامترها
partialZipFile File : یک شیء ERROR(/File) از فایل فشرده جزئی که حاوی ورودی های دایرکتوری مرکزی است.

endCentralDirInfo EndCentralDirectoryInfo : یک شی EndCentralDirectoryInfo از فایل فشرده.

offset long : افست در فایل فشرده جزئی که در آن محتوای ورودی های دایرکتوری مرکزی شروع می شود.

useZip64 boolean : یک بولی برای پشتیبانی از فرمت zip64 در دانلود جزئی.

برمی گرداند
لیستی از CentralDirectoryInfo فایل فشرده

پرتاب می کند
IOException

فایل gzip

public static void gzipFile (File file, 
                File gzipFile)

روش کمکی برای ایجاد یک نسخه gzip شده از یک فایل.

پارامترها
file File : فایل اصلی

gzipFile File : فایلی که قرار است محتویات فشرده را در آن قرار دهید

پرتاب می کند
IOException

isZipFileValid

public static boolean isZipFileValid (File zipFile, 
                boolean thorough)

روش کاربردی برای تأیید اینکه فایل فشرده خراب نیست.

پارامترها
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)

یک فایل درخواستی را از یک فایل فشرده جزئی استخراج کنید.

این روش فرض می‌کند که همه فایل‌ها هنگام فشرده‌سازی روی یک دیسک هستند.

اگر ERROR(/targetFile) یک دایرکتوری باشد، یک دایرکتوری خالی بدون محتوای آن ایجاد می شود.

اگر ERROR(/targetFile) یک Symlink باشد، یک Symlink ایجاد می شود اما حل نمی شود.

هنوز از ویژگی های زیر پشتیبانی نمی کند:

فایل فشرده بزرگتر از 4 گیگابایت

ZIP64 (نیاز به به روز رسانی ZipLocalFileHeader در اندازه فشرده)

فایل فشرده رمزگذاری شده

پارامترها
partialZip File : یک ERROR(/File) که بخشی از فایل فشرده است.

targetFile File : ERROR(/File) برای ذخیره فایل استخراج شده در آن.

zipEntry CentralDirectoryInfo : یک شی CentralDirectoryInfo از فایل برای استخراج از فایل فشرده جزئی.

localFileHeader LocalFileHeader : یک شیء LocalFileHeader از فایل برای استخراج از فایل فشرده جزئی.

startOffset long : شروع افست فایل برای استخراج.

پرتاب می کند
IOException

unzipPartialZipFolder

public static void unzipPartialZipFolder (File targetFile, 
                CentralDirectoryInfo zipEntry)

پوشه درخواستی را از یک فایل فشرده جزئی استخراج کنید و مجوز مناسب را اعمال کنید.

پارامترها
targetFile File : ERROR(/File) برای ذخیره فایل استخراج شده در آن.

zipEntry CentralDirectoryInfo : یک شی CentralDirectoryInfo از فایل برای استخراج از فایل فشرده جزئی.

پرتاب می کند
IOException

روش های محافظت شده

validateDestinationDir

protected static void validateDestinationDir (File destDir, 
                String filename)

پارامترها
destDir File

filename String