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)

यह एक यूटिलिटी तरीका है, जिसकी मदद से किसी डायरेक्ट्री और उसके सभी कॉन्टेंट वाली अस्थायी ज़िप फ़ाइल बनाई जा सकती है.

static File createZip( files, String name)

यह एक यूटिलिटी तरीका है, जिसकी मदद से दी गई फ़ाइलों वाली अस्थायी ज़िप फ़ाइल बनाई जा सकती है.

static File createZip(File dir, String name)

यह एक यूटिलिटी तरीका है, जिसकी मदद से किसी डायरेक्ट्री और उसके सभी कॉन्टेंट वाली अस्थायी ज़िप फ़ाइल बनाई जा सकती है.

static File createZip( files)

दी गई फ़ाइलों वाली अस्थायी ज़िप फ़ाइल बनाने के लिए, यूटिलिटी का तरीका

static void createZip(File dir, File zipFile)

यह एक यूटिलिटी तरीका है, जिसकी मदद से दी गई डायरेक्ट्री और उसके सभी कॉन्टेंट वाली ज़िप फ़ाइल बनाई जा सकती है.

static void createZip( files, File zipFile)

दी गई फ़ाइलों वाली ZIP फ़ाइल बनाने के लिए, यूटिलिटी का तरीका

static File extractFileFromZip(ZipFile zipFile, String filePath)

टूल का तरीका, जो किसी खास फ़ाइल को zip फ़ाइल से निकालकर, उसे tmp फ़ाइल में डालता है

static void extractZip(ZipFile zipFile, File destDir)

ज़िप फ़ाइल के पूरे कॉन्टेंट को दी गई डायरेक्ट्री में निकालने का तरीका

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

ज़िप फ़ाइल के कॉन्टेंट को दी गई डायरेक्ट्री में निकालने का तरीका

static File extractZipToTemp(File zipFile, String nameHint)

किसी स्ट्रिंग के साथ शुरू होने वाली टेम्पररी डायरेक्ट्री में, zip फ़ाइल को एक्स्ट्रैक्ट करना

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

ZIP फ़ाइल में मौजूद फ़ाइलों के लिए, {link CentralDirectoryInfo} की सूची पाएं.

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

ZIP फ़ाइल में मौजूद फ़ाइलों के लिए, {link CentralDirectoryInfo} की सूची पाएं.

static getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)

ZIP फ़ाइल में मौजूद फ़ाइलों के लिए, {link CentralDirectoryInfo} की सूची पाएं.

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

ZIP फ़ाइल में मौजूद फ़ाइलों के लिए, {link CentralDirectoryInfo} की सूची पाएं.

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 : फ़ाइल का रिलेटिव पाथ, जिसमें सेपरेटर भी शामिल हैं

थ्रो
if failed to add file to 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)

यह एक यूटिलिटी तरीका है, जिसकी मदद से किसी डायरेक्ट्री और उसके सभी कॉन्टेंट वाली अस्थायी ज़िप फ़ाइल बनाई जा सकती है.

पैरामीटर
dir File: वह डायरेक्ट्री जिसे ज़िप करना है

रिटर्न
File डायरेक्ट्री के कॉन्टेंट वाला, कुछ समय के लिए उपलब्ध ज़िप ERROR(/File)

थ्रो
if failed to create zip file

createZip

public static File createZip ( files, 
                String name)

यह एक यूटिलिटी तरीका है, जिसकी मदद से दी गई फ़ाइलों वाली अस्थायी ज़िप फ़ाइल बनाई जा सकती है.

पैरामीटर
files : उन फ़ाइलों की सूची जिन्हें zip करना है

name String: एक्सटेंशन के बिना बनाई गई ज़िप फ़ाइल का बेस नाम.

रिटर्न
File डायरेक्ट्री के कॉन्टेंट वाला, कुछ समय के लिए उपलब्ध ज़िप ERROR(/File)

थ्रो
if failed to create zip file

createZip

public static File createZip (File dir, 
                String name)

यह एक यूटिलिटी तरीका है, जिसकी मदद से किसी डायरेक्ट्री और उसके सभी कॉन्टेंट वाली अस्थायी ज़िप फ़ाइल बनाई जा सकती है.

पैरामीटर
dir File: वह डायरेक्ट्री जिसे ज़िप करना है

name String: एक्सटेंशन के बिना बनाई गई ज़िप फ़ाइल का बेस नाम.

रिटर्न
File डायरेक्ट्री के कॉन्टेंट वाला, कुछ समय के लिए उपलब्ध ज़िप ERROR(/File)

थ्रो
if failed to create zip file

createZip

public static File createZip ( files)

दी गई फ़ाइलों वाली अस्थायी ज़िप फ़ाइल बनाने के लिए, यूटिलिटी का तरीका

पैरामीटर
files : उन फ़ाइलों की सूची जिन्हें zip करना है

रिटर्न
File डायरेक्ट्री के कॉन्टेंट वाला, कुछ समय के लिए उपलब्ध ज़िप ERROR(/File)

थ्रो
if failed to create zip file

createZip

public static void createZip (File dir, 
                File zipFile)

यह एक यूटिलिटी तरीका है, जिसकी मदद से दी गई डायरेक्ट्री और उसके सभी कॉन्टेंट वाली ज़िप फ़ाइल बनाई जा सकती है.

पैरामीटर
dir File: वह डायरेक्ट्री जिसे ज़िप करना है

zipFile File: वह ZIP फ़ाइल जिसे बनाना है - यह पहले से मौजूद नहीं होनी चाहिए

थ्रो
if failed to create zip file

createZip

public static void createZip ( files, 
                File zipFile)

दी गई फ़ाइलों वाली ZIP फ़ाइल बनाने के लिए, यूटिलिटी का तरीका

पैरामीटर
files : उन फ़ाइलों की सूची जिन्हें zip करना है

zipFile File: वह ZIP फ़ाइल जिसे बनाना है - यह पहले से मौजूद नहीं होनी चाहिए

थ्रो
if failed to create zip file

extractFileFromZip

public static File extractFileFromZip (ZipFile zipFile, 
                String filePath)

टूल का तरीका, जो किसी खास फ़ाइल को zip फ़ाइल से निकालकर, उसे tmp फ़ाइल में डालता है

पैरामीटर
zipFile ZipFile: वह ERROR(/ZipFile) जिसे निकालना है

filePath String: वह filePath जिसे एक्सट्रैक्ट करना है

रिटर्न
File ERROR(/File) या न मिलने पर null

थ्रो
अगर फ़ाइल निकालने में समस्या आती है

extractZip

public static void extractZip (ZipFile zipFile, 
                File destDir)

ज़िप फ़ाइल के पूरे कॉन्टेंट को दी गई डायरेक्ट्री में निकालने का तरीका

पैरामीटर
zipFile ZipFile: वह ERROR(/ZipFile) जिसे निकालना है

destDir File: फ़ाइल को निकालने के लिए लोकल डायरेक्ट्री

थ्रो
अगर फ़ाइल निकालने में समस्या आती है

extractZip

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

ज़िप फ़ाइल के कॉन्टेंट को दी गई डायरेक्ट्री में निकालने का तरीका

पैरामीटर
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)

ZIP फ़ाइल में मौजूद फ़ाइलों के लिए, {link CentralDirectoryInfo} की सूची पाएं.

पैरामीटर
partialZipFile File: ज़िप फ़ाइल के उस हिस्से का ERROR(/File) ऑब्जेक्ट जिसमें सेंट्रल डायरेक्ट्री एंट्री शामिल हों.

endCentralDirInfo EndCentralDirectoryInfo: ज़िप फ़ाइल का EndCentralDirectoryInfo ऑब्जेक्ट.

useZip64 boolean: यह एक बूलियन वैल्यू है, जो कुछ हिस्से को डाउनलोड करने के लिए zip64 फ़ॉर्मैट का इस्तेमाल करने की सुविधा देती है.

रिटर्न
ZIP फ़ाइल में मौजूद CentralDirectoryInfo की सूची

थ्रो
IOException

getZipCentralDirectoryInfos

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

ZIP फ़ाइल में मौजूद फ़ाइलों के लिए, {link CentralDirectoryInfo} की सूची पाएं.

पैरामीटर
partialZipFile File: ज़िप फ़ाइल के उस हिस्से का ERROR(/File) ऑब्जेक्ट जिसमें सेंट्रल डायरेक्ट्री एंट्री शामिल होती हैं.

endCentralDirInfo EndCentralDirectoryInfo: ज़िप फ़ाइल का EndCentralDirectoryInfo ऑब्जेक्ट.

offset long: यह उस हिस्से की zip फ़ाइल में मौजूद ऑफ़सेट होता है जहां सेंट्रल डायरेक्ट्री के एंट्री का कॉन्टेंट शुरू होता है.

रिटर्न
ZIP फ़ाइल में मौजूद CentralDirectoryInfo की सूची

थ्रो
IOException

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo)

ZIP फ़ाइल में मौजूद फ़ाइलों के लिए, {link CentralDirectoryInfo} की सूची पाएं.

पैरामीटर
partialZipFile File: ज़िप फ़ाइल के उस हिस्से का ERROR(/File) ऑब्जेक्ट जिसमें सेंट्रल डायरेक्ट्री एंट्री शामिल हों.

endCentralDirInfo EndCentralDirectoryInfo: ज़िप फ़ाइल का EndCentralDirectoryInfo ऑब्जेक्ट.

रिटर्न
ZIP फ़ाइल में मौजूद CentralDirectoryInfo की सूची

थ्रो
IOException

getZipCentralDirectoryInfos

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

ZIP फ़ाइल में मौजूद फ़ाइलों के लिए, {link CentralDirectoryInfo} की सूची पाएं.

पैरामीटर
partialZipFile File: यह ज़िप फ़ाइल का ERROR(/File) ऑब्जेक्ट होता है, जिसमें सेंट्रल डायरेक्ट्री एंट्री शामिल होती हैं.

endCentralDirInfo EndCentralDirectoryInfo: ज़िप फ़ाइल का EndCentralDirectoryInfo ऑब्जेक्ट.

offset long: यह उस हिस्से की zip फ़ाइल में मौजूद ऑफ़सेट होता है जहां सेंट्रल डायरेक्ट्री के एंट्री का कॉन्टेंट शुरू होता है.

useZip64 boolean: यह एक बूलियन वैल्यू है, जो कुछ हिस्से को डाउनलोड करने के लिए zip64 फ़ॉर्मैट का इस्तेमाल करने की सुविधा देती है.

रिटर्न
ZIP फ़ाइल में मौजूद CentralDirectoryInfo की सूची

थ्रो
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 है, तो यह तरीका सही तरीके से बनाए गए संग्रह में सीआरसी गड़बड़ियों का पता नहीं लगा पाएगा.

रिटर्न
boolean false अगर फ़ाइल में गड़बड़ी है, तो true

थ्रो
अगर फ़ाइल को खोला या पढ़ा नहीं जा सका

unzipPartialZipFile

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

कुछ फ़ाइलों वाली zip फ़ाइल से, अनुरोध की गई एक फ़ाइल को निकालना.

इस तरीके से यह माना जाता है कि सभी फ़ाइलें एक ही डिस्क पर हैं.

अगर ERROR(/targetFile) कोई डायरेक्ट्री है, तो उसके कॉन्टेंट के बिना एक खाली डायरेक्ट्री बनाई जाएगी.

अगर ERROR(/targetFile) एक सिंबल लिंक है, तो सिंबल लिंक बन जाएगा, लेकिन उसे हल नहीं किया जाएगा.

फ़िलहाल, यह सुविधाएं काम नहीं करतीं:

ज़िप फ़ाइल का साइज़ 4 जीबी से ज़्यादा है

ZIP64(कंप्रेस किए गए साइज़ पर ZipLocalFileHeader अपडेट की ज़रूरत है)

एन्क्रिप्ट (सुरक्षित) की गई ज़िप फ़ाइल

पैरामीटर
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