ZipUtil
public
class
ZipUtil
extends Object
| java.lang.Object
|
| ↳ |
com.android.tradefed.util.ZipUtil
|
Class helper untuk operasi terkait kompresi
Ringkasan
Metode publik |
static
void
|
addToZip(ZipOutputStream out, File file, List<String> relativePathSegs)
Menambahkan file yang diberikan dan isinya secara rekursif ke ZipOutputStream
|
static
void
|
applyPermission(File targetFile, CentralDirectoryInfo zipEntry)
Menerapkan izin file yang dikonfigurasi dalam entri direktori pusat.
|
static
void
|
closeZip(ZipFile zipFile)
Menutup ZipFile yang terbuka, dengan mengabaikan pengecualian apa pun.
|
static
File
|
createZip(File dir, String name)
Metode utilitas untuk membuat file ZIP sementara yang berisi direktori tertentu dan
semua isinya.
|
static
File
|
createZip(File dir)
Metode utilitas untuk membuat file ZIP sementara yang berisi direktori tertentu dan
semua isinya.
|
static
File
|
createZip(List<File> files)
Metode utilitas untuk membuat file zip sementara yang berisi file tertentu
|
static
File
|
createZip(List<File> files, String name)
Metode utilitas untuk membuat file zip sementara yang berisi file tertentu.
|
static
void
|
createZip(List<File> files, File zipFile)
Metode utilitas untuk membuat file zip yang berisi file tertentu
|
static
void
|
createZip(File dir, File zipFile)
Metode utilitas untuk membuat file ZIP yang berisi direktori tertentu dan
semua isinya.
|
static
File
|
extractFileFromZip(ZipFile zipFile, String filePath)
Metode utilitas untuk mengekstrak satu file tertentu dari file zip ke file tmp
|
static
void
|
extractZip(ZipFile zipFile, File destDir)
Metode utilitas untuk mengekstrak seluruh konten file zip ke dalam direktori tertentu
|
static
void
|
extractZip(ZipFile zipFile, File destDir, Predicate<ZipEntry> shouldExtract)
Metode utilitas untuk mengekstrak konten file zip ke dalam direktori tertentu
|
static
File
|
extractZipToTemp(File zipFile, String nameHint)
Mengekstrak file zip ke direktori sementara yang diawali dengan string
|
static
List<CentralDirectoryInfo>
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset, boolean useZip64)
Mendapatkan daftar {link CentralDirectoryInfo} untuk file dalam file zip.
|
static
List<CentralDirectoryInfo>
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)
Mendapatkan daftar {link CentralDirectoryInfo} untuk file dalam file zip.
|
static
List<CentralDirectoryInfo>
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, boolean useZip64)
Mendapatkan daftar {link CentralDirectoryInfo} untuk file dalam file zip.
|
static
List<CentralDirectoryInfo>
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset)
Mendapatkan daftar {link CentralDirectoryInfo} untuk file dalam file zip.
|
static
void
|
gzipFile(File file, File gzipFile)
Metode helper untuk membuat versi ter-gzip dari satu file.
|
static
boolean
|
isZipFileValid(File zipFile, boolean thorough)
Metode utilitas untuk memverifikasi bahwa file zip tidak rusak.
|
static
void
|
unzipPartialZipFile(File partialZip, File targetFile, CentralDirectoryInfo zipEntry, LocalFileHeader localFileHeader, long startOffset)
Mengekstrak satu file yang diminta dari file zip parsial.
|
static
void
|
unzipPartialZipFolder(File targetFile, CentralDirectoryInfo zipEntry)
Ekstrak folder yang diminta dari file zip parsial dan terapkan izin yang sesuai.
|
Konstruktor publik
ZipUtil
public ZipUtil ()
Metode publik
addToZip
public static void addToZip (ZipOutputStream out,
File file,
List<String> relativePathSegs)
Menambahkan file yang diberikan dan isinya secara rekursif ke ZipOutputStream
| Parameter |
out |
ZipOutputStream: ZipOutputStream |
file |
File: File yang akan ditambahkan ke aliran |
relativePathSegs |
List: jalur relatif file, termasuk pemisah |
| Menampilkan |
IOException |
jika gagal menambahkan file ke zip |
applyPermission
public static void applyPermission (File targetFile,
CentralDirectoryInfo zipEntry)
Menerapkan izin file yang dikonfigurasi dalam entri direktori pusat.
| Parameter |
targetFile |
File: File untuk menetapkan izin. |
zipEntry |
CentralDirectoryInfo: objek CentralDirectoryInfo yang berisi izin file. |
| Menampilkan |
IOException |
jika gagal mengakses file. |
closeZip
public static void closeZip (ZipFile zipFile)
Menutup ZipFile yang terbuka, dengan mengabaikan pengecualian apa pun.
| Parameter |
zipFile |
ZipFile: file yang akan ditutup |
createZip
public static File createZip (File dir,
String name)
Metode utilitas untuk membuat file ZIP sementara yang berisi direktori tertentu dan
semua isinya.
| Parameter |
dir |
File: direktori yang akan di-zip |
name |
String: nama dasar file zip yang dibuat tanpa ekstensi. |
| Hasil |
File |
zip sementara File yang berisi konten direktori |
| Menampilkan |
IOException |
jika gagal membuat file zip |
createZip
public static File createZip (File dir)
Metode utilitas untuk membuat file ZIP sementara yang berisi direktori tertentu dan
semua isinya.
| Parameter |
dir |
File: direktori yang akan di-zip |
| Hasil |
File |
zip sementara File yang berisi konten direktori |
| Menampilkan |
IOException |
jika gagal membuat file zip |
createZip
public static File createZip (List<File> files)
Metode utilitas untuk membuat file zip sementara yang berisi file tertentu
| Parameter |
files |
List: daftar file yang akan di-ZIP |
| Hasil |
File |
zip sementara File yang berisi konten direktori |
| Menampilkan |
IOException |
jika gagal membuat file zip |
createZip
public static File createZip (List<File> files,
String name)
Metode utilitas untuk membuat file zip sementara yang berisi file tertentu.
| Parameter |
files |
List: daftar file yang akan di-ZIP |
name |
String: nama dasar file zip yang dibuat tanpa ekstensi. |
| Hasil |
File |
zip sementara File yang berisi konten direktori |
| Menampilkan |
IOException |
jika gagal membuat file zip |
createZip
public static void createZip (List<File> files,
File zipFile)
Metode utilitas untuk membuat file zip yang berisi file tertentu
| Parameter |
files |
List: daftar file yang akan di-ZIP |
zipFile |
File: file ZIP yang akan dibuat - file ini tidak boleh sudah ada |
| Menampilkan |
IOException |
jika gagal membuat file zip |
createZip
public static void createZip (File dir,
File zipFile)
Metode utilitas untuk membuat file ZIP yang berisi direktori tertentu dan
semua isinya.
| Parameter |
dir |
File: direktori yang akan di-zip |
zipFile |
File: file ZIP yang akan dibuat - file ini tidak boleh sudah ada |
| Menampilkan |
IOException |
jika gagal membuat file zip |
public static File extractFileFromZip (ZipFile zipFile,
String filePath)
Metode utilitas untuk mengekstrak satu file tertentu dari file zip ke file tmp
| Parameter |
zipFile |
ZipFile: ZipFile yang akan diekstrak |
filePath |
String: filePath yang akan diekstrak |
| Hasil |
File |
File atau null jika tidak ditemukan |
| Menampilkan |
IOException |
jika gagal mengekstrak file |
public static void extractZip (ZipFile zipFile,
File destDir)
Metode utilitas untuk mengekstrak seluruh konten file zip ke dalam direktori tertentu
| Parameter |
zipFile |
ZipFile: ZipFile yang akan diekstrak |
destDir |
File: direktori lokal untuk mengekstrak file |
| Menampilkan |
IOException |
jika gagal mengekstrak file |
public static void extractZip (ZipFile zipFile,
File destDir,
Predicate<ZipEntry> shouldExtract)
Metode utilitas untuk mengekstrak konten file zip ke dalam direktori tertentu
| Parameter |
zipFile |
ZipFile: ZipFile yang akan diekstrak |
destDir |
File: direktori lokal untuk mengekstrak file |
shouldExtract |
Predicate: predikat untuk menentukan apakah ZipEntry harus diekstrak |
| Menampilkan |
IOException |
jika gagal mengekstrak file |
public static File extractZipToTemp (File zipFile,
String nameHint)
Mengekstrak file zip ke direktori sementara yang diawali dengan string
| Parameter |
zipFile |
File: file zip yang akan diekstrak |
nameHint |
String: awalan untuk direktori sementara |
| Hasil |
File |
File yang mengarah ke direktori temp |
| Menampilkan |
IOException |
|
ZipException |
|
getZipCentralDirectoryInfos
public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
long offset,
boolean useZip64)
Mendapatkan daftar {link CentralDirectoryInfo} untuk file dalam file zip.
| Parameter |
partialZipFile |
File: objek File dari file zip parsial yang berisi entri
direktori pusat. |
endCentralDirInfo |
EndCentralDirectoryInfo: objek EndCentralDirectoryInfo dari file zip. |
offset |
long: offset dalam file zip parsial tempat konten entri direktori pusat
dimulai. |
useZip64 |
boolean: boolean untuk mendukung format zip64 dalam download sebagian. |
| Menampilkan |
|
java.io.IOException |
IOException |
|
getZipCentralDirectoryInfos
public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo)
Mendapatkan daftar {link CentralDirectoryInfo} untuk file dalam file zip.
| Parameter |
partialZipFile |
File: objek File dari file zip parsial yang berisi entri
direktori pusat. |
endCentralDirInfo |
EndCentralDirectoryInfo: objek EndCentralDirectoryInfo dari file zip. |
| Menampilkan |
|
java.io.IOException |
IOException |
|
getZipCentralDirectoryInfos
public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
boolean useZip64)
Mendapatkan daftar {link CentralDirectoryInfo} untuk file dalam file zip.
| Parameter |
partialZipFile |
File: objek File dari file zip parsial yang berisi entri
direktori pusat. |
endCentralDirInfo |
EndCentralDirectoryInfo: objek EndCentralDirectoryInfo dari file zip. |
useZip64 |
boolean: boolean untuk mendukung format zip64 dalam download sebagian. |
| Menampilkan |
|
java.io.IOException |
IOException |
|
getZipCentralDirectoryInfos
public static List<CentralDirectoryInfo> getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
long offset)
Mendapatkan daftar {link CentralDirectoryInfo} untuk file dalam file zip.
| Parameter |
partialZipFile |
File: objek File dari file zip parsial yang berisi entri
direktori pusat. |
endCentralDirInfo |
EndCentralDirectoryInfo: objek EndCentralDirectoryInfo dari file zip. |
offset |
long: offset dalam file zip parsial tempat konten entri direktori pusat
dimulai. |
| Menampilkan |
|
java.io.IOException |
IOException |
|
gzipFile
public static void gzipFile (File file,
File gzipFile)
Metode helper untuk membuat versi ter-gzip dari satu file.
| Parameter |
file |
File: file asli |
gzipFile |
File: file untuk menempatkan konten terkompresi |
| Menampilkan |
|
java.io.IOException |
IOException |
|
isZipFileValid
public static boolean isZipFileValid (File zipFile,
boolean thorough)
Metode utilitas untuk memverifikasi bahwa file zip tidak rusak.
| Parameter |
zipFile |
File: File yang akan diperiksa |
thorough |
boolean: Apakah akan mencoba mengekstrak arsip sepenuhnya. Jika false, metode ini akan gagal mendeteksi error CRC dalam arsip yang terbentuk dengan baik. |
| Hasil |
boolean |
false jika file tampak rusak; true jika tidak |
| Menampilkan |
IOException |
jika file tidak dapat dibuka atau dibaca |
unzipPartialZipFile
public static void unzipPartialZipFile (File partialZip,
File targetFile,
CentralDirectoryInfo zipEntry,
LocalFileHeader localFileHeader,
long startOffset)
Mengekstrak satu file yang diminta dari file zip parsial.
Metode ini mengasumsikan semua file berada di disk yang sama saat dikompresi.
Jika ERROR(/targetFile) adalah direktori, direktori kosong akan dibuat tanpa isinya.
Jika ERROR(/targetFile) adalah symlink, symlink akan dibuat tetapi tidak diselesaikan.
Fitur berikut belum didukung:
File ZIP lebih besar dari 4 GB
ZIP64(memerlukan update ZipLocalFileHeader pada ukuran terkompresi)
File ZIP terenkripsi
| Parameter |
partialZip |
File: File yang merupakan bagian dari file zip. |
targetFile |
File: File untuk menyimpan file yang diekstrak. |
zipEntry |
CentralDirectoryInfo: objek CentralDirectoryInfo dari file yang akan diekstrak dari file zip
parsial. |
localFileHeader |
LocalFileHeader: objek LocalFileHeader dari file yang akan diekstrak dari
file zip parsial. |
startOffset |
long: offset awal file yang akan diekstrak. |
| Menampilkan |
|
java.io.IOException |
IOException |
|
unzipPartialZipFolder
public static void unzipPartialZipFolder (File targetFile,
CentralDirectoryInfo zipEntry)
Ekstrak folder yang diminta dari file zip parsial dan terapkan izin yang sesuai.
| Parameter |
targetFile |
File: File untuk menyimpan file yang diekstrak. |
zipEntry |
CentralDirectoryInfo: objek CentralDirectoryInfo dari file yang akan diekstrak dari file zip
parsial. |
| Menampilkan |
|
java.io.IOException |
IOException |
|
Metode yang dilindungi
validateDestinationDir
protected static void validateDestinationDir (File destDir,
String filename)
| Parameter |
destDir |
File |
filename |
String |