ZipUtil

public class ZipUtil
extends Object

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


Sıkıştırmayla ilgili işlemler için yardımcı sınıf

Özet

Herkese açık oluşturucular

ZipUtil()

Herkese açık yöntemler

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

Belirtilen dosyayı ve içeriğini ZipOutputStream'e yinelemeli olarak ekler.

static void applyPermission(File targetFile, CentralDirectoryInfo zipEntry)

Merkezi dizin girişinde yapılandırılan dosya iznini uygulayın.

static void closeZip(ZipFile zipFile)

Açık bir ZipFile öğesini, istisnaları dikkate almadan kapatın.

static File createZip(File dir, String name)

Belirtilen dizini ve tüm içeriğini içeren geçici bir ZIP dosyası oluşturmak için kullanılan yardımcı yöntem.

static File createZip(File dir)

Belirtilen dizini ve tüm içeriğini içeren geçici bir ZIP dosyası oluşturmak için kullanılan yardımcı yöntem.

static File createZip(List<File> files)

Belirli dosyaları içeren geçici bir ZIP dosyası oluşturmak için kullanılan yardımcı yöntem

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

Belirtilen dosyaları içeren geçici bir ZIP dosyası oluşturmak için kullanılan yardımcı yöntem.

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

Belirtilen dosyaları içeren bir zip dosyası oluşturmak için kullanılan yardımcı yöntem

static void createZip(File dir, File zipFile)

Belirtilen dizini ve tüm içeriğini içeren bir ZIP dosyası oluşturmak için kullanılan yardımcı yöntem.

static File extractFileFromZip(ZipFile zipFile, String filePath)

ZIP dosyasından belirli bir dosyayı geçici dosyaya ayıklamak için kullanılan yardımcı yöntem

static void extractZip(ZipFile zipFile, File destDir)

Sıkıştırılmış dosyanın tüm içeriğini belirtilen dizine çıkarmak için kullanılan yardımcı yöntem

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

Sıkıştırılmış dosyanın içeriğini belirtilen dizine çıkarmak için kullanılan yardımcı yöntem

static File extractZipToTemp(File zipFile, String nameHint)

Bir ZIP dosyasını, başına dize eklenmiş bir geçici dizine ayıklama

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

Bir ZIP dosyasındaki dosyalar için {link CentralDirectoryInfo} listesini alın.

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

Bir ZIP dosyasındaki dosyalar için {link CentralDirectoryInfo} listesini alın.

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

Bir ZIP dosyasındaki dosyalar için {link CentralDirectoryInfo} listesini alın.

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

Bir ZIP dosyasındaki dosyalar için {link CentralDirectoryInfo} listesini alın.

static void gzipFile(File file, File gzipFile)

Tek bir dosyanın gzip ile sıkıştırılmış sürümünü oluşturmak için yardımcı yöntem.

static boolean isZipFileValid(File zipFile, boolean thorough)

Bir ZIP dosyasının bozuk olmadığını doğrulamak için kullanılan yardımcı program yöntemi.

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

Kısmi ZIP dosyasından istenen tek bir dosyayı ayıklama

static void unzipPartialZipFolder(File targetFile, CentralDirectoryInfo zipEntry)

İstenen klasörü kısmi bir ZIP dosyasından ayıklayın ve uygun izni uygulayın.

Korunan yöntemler

static void validateDestinationDir(File destDir, String filename)

Herkese açık oluşturucular

ZipUtil

public ZipUtil ()

Herkese açık yöntemler

addToZip

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

Belirtilen dosyayı ve içeriğini ZipOutputStream'e yinelemeli olarak ekler.

Parametreler
out ZipOutputStream: ZipOutputStream

file File: akışa eklenecek File

relativePathSegs List: Ayırıcılar dahil dosyanın göreli yolu

Verdiği hatalar
IOException Dosya zip'e eklenemezse

applyPermission

public static void applyPermission (File targetFile, 
                CentralDirectoryInfo zipEntry)

Merkezi dizin girişinde yapılandırılan dosya iznini uygulayın.

Parametreler
targetFile File: izin ayarlanacak File.

zipEntry CentralDirectoryInfo: Dosya izinlerini içeren bir CentralDirectoryInfo nesnesi.

Verdiği hatalar
IOException dosyaya erişilemiyorsa

closeZip

public static void closeZip (ZipFile zipFile)

Açık bir ZipFile öğesini, istisnaları dikkate almadan kapatın.

Parametreler
zipFile ZipFile: Kapatılacak dosya

createZip

public static File createZip (File dir, 
                String name)

Belirtilen dizini ve tüm içeriğini içeren geçici bir ZIP dosyası oluşturmak için kullanılan yardımcı yöntem.

Parametreler
dir File: Sıkıştırılacak dizin

name String: Uzantı olmadan oluşturulan zip dosyasının temel adı.

İadeler
File Dizin içeriklerini içeren geçici bir zip dosyası File

Verdiği hatalar
IOException Sıkıştırılmış dosya oluşturulamadıysa

createZip

public static File createZip (File dir)

Belirtilen dizini ve tüm içeriğini içeren geçici bir ZIP dosyası oluşturmak için kullanılan yardımcı yöntem.

Parametreler
dir File: Sıkıştırılacak dizin

İadeler
File Dizin içeriklerini içeren geçici bir zip dosyası File

Verdiği hatalar
IOException Sıkıştırılmış dosya oluşturulamadıysa

createZip

public static File createZip (List<File> files)

Belirli dosyaları içeren geçici bir ZIP dosyası oluşturmak için kullanılan yardımcı yöntem

Parametreler
files List: Sıkıştırılacak dosyaların listesi

İadeler
File Dizin içeriklerini içeren geçici bir zip dosyası File

Verdiği hatalar
IOException Sıkıştırılmış dosya oluşturulamadıysa

createZip

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

Belirtilen dosyaları içeren geçici bir ZIP dosyası oluşturmak için kullanılan yardımcı yöntem.

Parametreler
files List: Sıkıştırılacak dosyaların listesi

name String: Uzantı olmadan oluşturulan zip dosyasının temel adı.

İadeler
File Dizin içeriklerini içeren geçici bir zip dosyası File

Verdiği hatalar
IOException Sıkıştırılmış dosya oluşturulamadıysa

createZip

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

Belirtilen dosyaları içeren bir zip dosyası oluşturmak için kullanılan yardımcı yöntem

Parametreler
files List: Sıkıştırılacak dosyaların listesi

zipFile File: Oluşturulacak ZIP dosyası. Bu dosya önceden mevcut olmamalıdır.

Verdiği hatalar
IOException Sıkıştırılmış dosya oluşturulamadıysa

createZip

public static void createZip (File dir, 
                File zipFile)

Belirtilen dizini ve tüm içeriğini içeren bir ZIP dosyası oluşturmak için kullanılan yardımcı yöntem.

Parametreler
dir File: Sıkıştırılacak dizin

zipFile File: Oluşturulacak ZIP dosyası. Bu dosya önceden mevcut olmamalıdır.

Verdiği hatalar
IOException Sıkıştırılmış dosya oluşturulamadıysa

extractFileFromZip

public static File extractFileFromZip (ZipFile zipFile, 
                String filePath)

ZIP dosyasından belirli bir dosyayı geçici dosyaya ayıklamak için kullanılan yardımcı yöntem

Parametreler
zipFile ZipFile: çıkarılacak ZipFile

filePath String: Çıkarılacak dosyanın dosya yolu

İadeler
File File veya bulunamazsa null

Verdiği hatalar
IOException Dosya çıkarılamadıysa

extractZip

public static void extractZip (ZipFile zipFile, 
                File destDir)

Sıkıştırılmış dosyanın tüm içeriğini belirtilen dizine çıkarmak için kullanılan yardımcı yöntem

Parametreler
zipFile ZipFile: çıkarılacak ZipFile

destDir File: Dosyanın çıkarılacağı yerel dizin

Verdiği hatalar
IOException Dosya çıkarılamadıysa

extractZip

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

Sıkıştırılmış dosyanın içeriğini belirtilen dizine çıkarmak için kullanılan yardımcı yöntem

Parametreler
zipFile ZipFile: çıkarılacak ZipFile

destDir File: Dosyanın çıkarılacağı yerel dizin

shouldExtract Predicate: Bir ZipEntry'nin çıkarılıp çıkarılmayacağını belirleyen yüklem

Verdiği hatalar
IOException Dosya çıkarılamadıysa

extractZipToTemp

public static File extractZipToTemp (File zipFile, 
                String nameHint)

Bir ZIP dosyasını, başına dize eklenmiş bir geçici dizine ayıklama

Parametreler
zipFile File: çıkarılacak zip dosyası

nameHint String: Geçici dizin için bir önek

İadeler
File Geçici dizini gösteren bir File

Verdiği hatalar
IOException
ZipException

getZipCentralDirectoryInfos

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

Bir ZIP dosyasındaki dosyalar için {link CentralDirectoryInfo} listesini alın.

Parametreler
partialZipFile File: Merkezi dizin girişlerini içeren kısmi ZIP dosyasının File nesnesi.

endCentralDirInfo EndCentralDirectoryInfo: Zip dosyasının EndCentralDirectoryInfo nesnesi.

offset long: Merkezi dizin girişlerinin içeriğinin başladığı kısmi ZIP dosyasındaki ofset.

useZip64 boolean: Kısmi indirmede zip64 biçimini destekleyen bir boole.

İadeler
List<CentralDirectoryInfo> Zip dosyasının CentralDirectoryInfo listesi

Verdiği hatalar
java.io.IOException
IOException

getZipCentralDirectoryInfos

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

Bir ZIP dosyasındaki dosyalar için {link CentralDirectoryInfo} listesini alın.

Parametreler
partialZipFile File: Merkezi dizin girişlerini içeren kısmi ZIP dosyasının File nesnesi.

endCentralDirInfo EndCentralDirectoryInfo: Zip dosyasının EndCentralDirectoryInfo nesnesi.

İadeler
List<CentralDirectoryInfo> Zip dosyasının CentralDirectoryInfo listesi

Verdiği hatalar
java.io.IOException
IOException

getZipCentralDirectoryInfos

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

Bir ZIP dosyasındaki dosyalar için {link CentralDirectoryInfo} listesini alın.

Parametreler
partialZipFile File: Merkezi dizin girişlerini içeren kısmi ZIP dosyasının File nesnesi.

endCentralDirInfo EndCentralDirectoryInfo: Zip dosyasının EndCentralDirectoryInfo nesnesi.

useZip64 boolean: Kısmi indirmede zip64 biçimini destekleyen bir boole.

İadeler
List<CentralDirectoryInfo> Zip dosyasının CentralDirectoryInfo listesi

Verdiği hatalar
java.io.IOException
IOException

getZipCentralDirectoryInfos

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

Bir ZIP dosyasındaki dosyalar için {link CentralDirectoryInfo} listesini alın.

Parametreler
partialZipFile File: Merkezi dizin girişlerini içeren kısmi ZIP dosyasının File nesnesi.

endCentralDirInfo EndCentralDirectoryInfo: Zip dosyasının EndCentralDirectoryInfo nesnesi.

offset long: Merkezi dizin girişlerinin içeriğinin başladığı kısmi ZIP dosyasındaki ofset.

İadeler
List<CentralDirectoryInfo> Zip dosyasının CentralDirectoryInfo listesi

Verdiği hatalar
java.io.IOException
IOException

gzipFile

public static void gzipFile (File file, 
                File gzipFile)

Tek bir dosyanın gzip ile sıkıştırılmış sürümünü oluşturmak için yardımcı yöntem.

Parametreler
file File: orijinal dosya

gzipFile File: Sıkıştırılmış içeriklerin yerleştirileceği dosya

Verdiği hatalar
java.io.IOException
IOException

isZipFileValid

public static boolean isZipFileValid (File zipFile, 
                boolean thorough)

Bir ZIP dosyasının bozuk olmadığını doğrulamak için kullanılan yardımcı program yöntemi.

Parametreler
zipFile File: kontrol edilecek File

thorough boolean: Arşivin tamamen çıkarılmaya çalışılıp çalışılmayacağı. false ise bu yöntem, iyi biçimlendirilmiş bir arşivdeki CRC hatalarını algılayamaz.

İadeler
boolean false dosya bozuk görünüyorsa; true aksi takdirde

Verdiği hatalar
IOException Dosya açılamadıysa veya okunamadıysa

unzipPartialZipFile

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

Kısmi ZIP dosyasından istenen tek bir dosyayı ayıklama

Bu yöntemde, sıkıştırılan tüm dosyaların aynı diskte olduğu varsayılır.

ERROR(/targetFile) bir dizinse içeriği olmadan boş bir dizin oluşturulur.

ERROR(/targetFile) bir sembolik bağlantıysa sembolik bağlantı oluşturulur ancak çözümlenmez.

Henüz aşağıdaki özellikler desteklenmemektedir:

4 GB'tan büyük ZIP dosyası

ZIP64(sıkıştırılmış boyutta ZipLocalFileHeader güncellemesi gerekir)

Şifrelenmiş ZIP dosyası

Parametreler
partialZip File: Zip dosyasının bir bölümü olan File.

targetFile File: Çıkarılan dosyanın kaydedileceği File.

zipEntry CentralDirectoryInfo: Kısmi zip dosyasından çıkarılacak CentralDirectoryInfo nesnesi.

localFileHeader LocalFileHeader: Kısmi zip dosyasından çıkarılacak dosyanın LocalFileHeader nesnesi.

startOffset long: Çıkarılacak dosyanın başlangıç uzaklığı.

Verdiği hatalar
java.io.IOException
IOException

unzipPartialZipFolder

public static void unzipPartialZipFolder (File targetFile, 
                CentralDirectoryInfo zipEntry)

İstenen klasörü kısmi bir ZIP dosyasından ayıklayın ve uygun izni uygulayın.

Parametreler
targetFile File: Çıkarılan dosyanın kaydedileceği File.

zipEntry CentralDirectoryInfo: Kısmi zip dosyasından çıkarılacak CentralDirectoryInfo nesnesi.

Verdiği hatalar
java.io.IOException
IOException

Korunan yöntemler

validateDestinationDir

protected static void validateDestinationDir (File destDir, 
                String filename)

Parametreler
destDir File

filename String

Verdiği hatalar
IOException