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)

วิธีอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไดเร็กทอรีที่กำหนดและเนื้อหาทั้งหมด

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

วิธีการอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไฟล์ที่กำหนด

static File createZip (File dir, String name)

วิธีอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไดเร็กทอรีที่กำหนดและเนื้อหาทั้งหมด

static File createZip ( files) createZip ( files)

วิธีการอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไฟล์ที่กำหนด

static void createZip (File dir, File zipFile)

วิธีอรรถประโยชน์ในการสร้างไฟล์ zip ที่มีไดเร็กทอรีที่กำหนดและเนื้อหาทั้งหมด

static void createZip ( files, File zipFile) 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) 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 ได้

สมัครการอนุญาต

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 : ไดเร็กทอรีที่จะ zip

การส่งคืน
File ERROR(/File) ที่มีเนื้อหาไดเร็กทอรี

ขว้าง
หากล้มเหลวในการสร้างไฟล์ zip

createZip

public static File createZip ( files, 
                String name)

วิธีการอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไฟล์ที่กำหนด

พารามิเตอร์
files : รายการไฟล์ที่จะซิป

name String : ชื่อพื้นฐานของไฟล์ zip ที่สร้างขึ้นโดยไม่มีนามสกุล

การส่งคืน
File ERROR(/File) ที่มีเนื้อหาไดเร็กทอรี

ขว้าง
หากล้มเหลวในการสร้างไฟล์ zip

createZip

public static File createZip (File dir, 
                String name)

วิธีอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไดเร็กทอรีที่กำหนดและเนื้อหาทั้งหมด

พารามิเตอร์
dir File : ไดเร็กทอรีที่จะ zip

name String : ชื่อพื้นฐานของไฟล์ zip ที่สร้างขึ้นโดยไม่มีนามสกุล

การส่งคืน
File ERROR(/File) ที่มีเนื้อหาไดเร็กทอรี

ขว้าง
หากล้มเหลวในการสร้างไฟล์ zip

createZip

public static File createZip ( files)

วิธีการอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไฟล์ที่กำหนด

พารามิเตอร์
files : รายการไฟล์ที่จะซิป

การส่งคืน
File ERROR(/File) ที่มีเนื้อหาไดเร็กทอรี

ขว้าง
หากล้มเหลวในการสร้างไฟล์ zip

createZip

public static void createZip (File dir, 
                File zipFile)

วิธีอรรถประโยชน์ในการสร้างไฟล์ zip ที่มีไดเร็กทอรีที่กำหนดและเนื้อหาทั้งหมด

พารามิเตอร์
dir File : ไดเร็กทอรีที่จะ zip

zipFile File : ไฟล์ zip ที่จะสร้าง - ไม่ควรมีอยู่อยู่แล้ว

ขว้าง
หากล้มเหลวในการสร้างไฟล์ zip

createZip

public static void createZip ( files, 
                File zipFile)

วิธีการอรรถประโยชน์ในการสร้างไฟล์ zip ที่มีไฟล์ที่กำหนด

พารามิเตอร์
files : รายการไฟล์ที่จะซิป

zipFile File : ไฟล์ zip ที่จะสร้าง - ไม่ควรมีอยู่อยู่แล้ว

ขว้าง
หากล้มเหลวในการสร้างไฟล์ zip

แยกไฟล์FromZip

public static File extractFileFromZip (ZipFile zipFile, 
                String filePath)

วิธีอรรถประโยชน์ในการแตกไฟล์หนึ่งไฟล์จากไฟล์ zip ลงในไฟล์ tmp

พารามิเตอร์
zipFile ZipFile : ERROR(/ZipFile) ที่จะแตกไฟล์

filePath String : เส้นทางไฟล์ที่จะแยก

การส่งคืน
File ERROR(/File) หรือ null หากไม่พบ

ขว้าง
หากไม่สามารถแตกไฟล์ได้

แยกZip

public static void extractZip (ZipFile zipFile, 
                File destDir)

วิธีการอรรถประโยชน์เพื่อแยกเนื้อหาทั้งหมดของไฟล์ zip ลงในไดเร็กทอรีที่กำหนด

พารามิเตอร์
zipFile ZipFile : ERROR(/ZipFile) ที่จะแตกไฟล์

destDir File : dir ในเครื่องที่จะแยกไฟล์ไป

ขว้าง
หากไม่สามารถแตกไฟล์ได้

แยกZip

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

วิธีการอรรถประโยชน์ในการแยกเนื้อหาของไฟล์ zip ลงในไดเร็กทอรีที่กำหนด

พารามิเตอร์
zipFile ZipFile : ERROR(/ZipFile) ที่จะแตกไฟล์

destDir File : dir ในเครื่องที่จะแยกไฟล์ไป

shouldExtract : เพรดิเคตที่จะเจาะลึกหากควรแยก ZipEntry

ขว้าง
หากไม่สามารถแตกไฟล์ได้

แยกZipToTemp

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 บางส่วนที่มีรายการไดเรกทอรีกลาง

endCentralDirInfo EndCentralDirectoryInfo : ออบเจ็กต์ EndCentralDirectoryInfo ของไฟล์ zip

useZip64 boolean : บูลีนเพื่อรองรับรูปแบบ zip64 ในการดาวน์โหลดบางส่วน

การส่งคืน
รายการ CentralDirectoryInfo ของไฟล์ zip

ขว้าง
IOข้อยกเว้น

getZipCentralDirectoryInfos

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

รับรายการ {link CentralDirectoryInfo} สำหรับไฟล์ในไฟล์ ZIP

พารามิเตอร์
partialZipFile File : อ็อบเจ็กต์ ERROR(/File) ของไฟล์ zip บางส่วนที่มีรายการไดเรกทอรีกลาง

endCentralDirInfo EndCentralDirectoryInfo : ออบเจ็กต์ EndCentralDirectoryInfo ของไฟล์ zip

offset long : ออฟเซ็ตในไฟล์ zip บางส่วนที่เนื้อหาของรายการไดเร็กทอรีกลางเริ่มต้น

การส่งคืน
รายการ CentralDirectoryInfo ของไฟล์ zip

ขว้าง
IOข้อยกเว้น

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo)

รับรายการ {link CentralDirectoryInfo} สำหรับไฟล์ในไฟล์ ZIP

พารามิเตอร์
partialZipFile File : อ็อบเจ็กต์ ERROR(/File) ของไฟล์ zip บางส่วนที่มีรายการไดเรกทอรีกลาง

endCentralDirInfo EndCentralDirectoryInfo : ออบเจ็กต์ EndCentralDirectoryInfo ของไฟล์ zip

การส่งคืน
รายการ CentralDirectoryInfo ของไฟล์ zip

ขว้าง
IOข้อยกเว้น

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 บางส่วนที่เนื้อหาของรายการไดเร็กทอรีกลางเริ่มต้น

useZip64 boolean : บูลีนเพื่อรองรับรูปแบบ zip64 ในการดาวน์โหลดบางส่วน

การส่งคืน
รายการ CentralDirectoryInfo ของไฟล์ zip

ขว้าง
IOข้อยกเว้น

gzipFile

public static void gzipFile (File file, 
                File gzipFile)

วิธีการช่วยเหลือในการสร้างไฟล์เดียวในเวอร์ชัน gzip

พารามิเตอร์
file File : ไฟล์ต้นฉบับ

gzipFile File : ไฟล์สำหรับวางเนื้อหาที่ถูกบีบอัด

ขว้าง
IOข้อยกเว้น

isZipFileValid

public static boolean isZipFileValid (File zipFile, 
                boolean thorough)

วิธีการอรรถประโยชน์ในการตรวจสอบว่าไฟล์ zip ไม่เสียหาย

พารามิเตอร์
zipFile File : ERROR(/File) ที่จะตรวจสอบ

thorough boolean : ระบุว่าจะพยายามแยกไฟล์เก็บถาวรโดยสมบูรณ์หรือไม่ หากเป็น false วิธีนี้จะล้มเหลวในการตรวจจับข้อผิดพลาด CRC ในไฟล์เก็บถาวรที่มีรูปแบบถูกต้อง

การส่งคืน
boolean false หากไฟล์ดูเหมือนจะเสียหาย true เป็นอย่างอื่น

ขว้าง
หากไม่สามารถเปิดหรืออ่านไฟล์ได้

คลายซิปPartialZipFile

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

แยกไฟล์ที่ร้องขอออกจากไฟล์ zip บางส่วน

วิธีการนี้จะถือว่าไฟล์ทั้งหมดอยู่ในดิสก์เดียวกันเมื่อทำการบีบอัด ยังไม่รองรับคุณสมบัติต่อไปนี้:

ไฟล์ ZIP ที่มีขนาดใหญ่กว่า 4GB

ZIP64 (ต้องอัปเดต ZipLocalFileHeader ในขนาดที่บีบอัด)

ไฟล์ซิปที่เข้ารหัส

ซิมลิงค์

พารามิเตอร์
partialZip File : ERROR(/File) ที่เป็นบางส่วนของไฟล์ zip

targetFile File : ERROR(/File) ที่จะบันทึกไฟล์ที่แตกออกมา

zipEntry CentralDirectoryInfo : ออบเจ็กต์ CentralDirectoryInfo ของไฟล์ที่จะแยกจากไฟล์ zip บางส่วน

localFileHeader LocalFileHeader : ออบเจ็กต์ LocalFileHeader ของไฟล์ที่จะแยกจากไฟล์ zip บางส่วน

startOffset long : เริ่มออฟเซ็ตของไฟล์ที่จะแยก

ขว้าง
IOข้อยกเว้น

คลายซิปPartialZipFolder

public static void unzipPartialZipFolder (File targetFile, 
                CentralDirectoryInfo zipEntry)

แยกโฟลเดอร์ที่ร้องขอออกจากไฟล์ zip บางส่วนและใช้การอนุญาตที่เหมาะสม

พารามิเตอร์
targetFile File : ERROR(/File) ที่จะบันทึกไฟล์ที่แตกออกมา

zipEntry CentralDirectoryInfo : ออบเจ็กต์ CentralDirectoryInfo ของไฟล์ที่จะแยกจากไฟล์ zip บางส่วน

ขว้าง
IOข้อยกเว้น

วิธีการที่ได้รับการป้องกัน

ตรวจสอบปลายทางDir

protected static void validateDestinationDir (File destDir, 
                String filename)

พารามิเตอร์
destDir File

filename String