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 บางส่วนและใช้การอนุญาตที่เหมาะสม |
ผู้รับเหมาก่อสร้างสาธารณะ
ZipUtil
public ZipUtil ()
วิธีการสาธารณะ
addToZip
public static void addToZip (ZipOutputStream out,
File file,
relativePathSegs)
เพิ่มไฟล์ที่กำหนดและเนื้อหาลงใน ZipOutputStream ซ้ำๆ
ขว้าง |
---|
| หากไม่สามารถเพิ่มไฟล์ลงใน zip ได้ |
สมัครการอนุญาต
public static void applyPermission (File targetFile,
CentralDirectoryInfo zipEntry)
ใช้สิทธิ์ของไฟล์ที่กำหนดค่าในรายการไดเรกทอรีกลาง
ขว้าง |
---|
| หากไม่สามารถเข้าถึงไฟล์ได้ |
closeZip
public static void closeZip (ZipFile zipFile)
ปิด ERROR(/ZipFile)
แบบเปิด โดยไม่สนใจข้อยกเว้นใดๆ
พารามิเตอร์ |
---|
zipFile | ZipFile : ไฟล์ที่ต้องการปิด |
createZip
public static File createZip (File dir)
วิธีอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไดเร็กทอรีที่กำหนดและเนื้อหาทั้งหมด
พารามิเตอร์ |
---|
dir | File : ไดเร็กทอรีที่จะ zip |
ขว้าง |
---|
| หากล้มเหลวในการสร้างไฟล์ zip |
createZip
public static File createZip ( files,
String name)
วิธีการอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไฟล์ที่กำหนด
พารามิเตอร์ |
---|
files | : รายการไฟล์ที่จะซิป |
name | String : ชื่อพื้นฐานของไฟล์ zip ที่สร้างขึ้นโดยไม่มีนามสกุล |
ขว้าง |
---|
| หากล้มเหลวในการสร้างไฟล์ zip |
createZip
public static File createZip (File dir,
String name)
วิธีอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไดเร็กทอรีที่กำหนดและเนื้อหาทั้งหมด
พารามิเตอร์ |
---|
dir | File : ไดเร็กทอรีที่จะ zip |
name | String : ชื่อพื้นฐานของไฟล์ zip ที่สร้างขึ้นโดยไม่มีนามสกุล |
ขว้าง |
---|
| หากล้มเหลวในการสร้างไฟล์ zip |
createZip
public static File createZip ( files)
วิธีการอรรถประโยชน์ในการสร้างไฟล์ zip ชั่วคราวที่มีไฟล์ที่กำหนด
พารามิเตอร์ |
---|
files | : รายการไฟล์ที่จะซิป |
ขว้าง |
---|
| หากล้มเหลวในการสร้างไฟล์ 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 |
public static File extractFileFromZip (ZipFile zipFile,
String filePath)
วิธีอรรถประโยชน์ในการแตกไฟล์หนึ่งไฟล์จากไฟล์ zip ลงในไฟล์ tmp
พารามิเตอร์ |
---|
zipFile | ZipFile : ERROR(/ZipFile) ที่จะแตกไฟล์ |
filePath | String : เส้นทางไฟล์ที่จะแยก |
ขว้าง |
---|
| หากไม่สามารถแตกไฟล์ได้ |
public static void extractZip (ZipFile zipFile,
File destDir)
วิธีการอรรถประโยชน์เพื่อแยกเนื้อหาทั้งหมดของไฟล์ zip ลงในไดเร็กทอรีที่กำหนด
พารามิเตอร์ |
---|
zipFile | ZipFile : ERROR(/ZipFile) ที่จะแตกไฟล์ |
destDir | File : dir ในเครื่องที่จะแยกไฟล์ไป |
ขว้าง |
---|
| หากไม่สามารถแตกไฟล์ได้ |
public static void extractZip (ZipFile zipFile,
File destDir,
shouldExtract)
วิธีการอรรถประโยชน์ในการแยกเนื้อหาของไฟล์ zip ลงในไดเร็กทอรีที่กำหนด
พารามิเตอร์ |
---|
zipFile | ZipFile : ERROR(/ZipFile) ที่จะแตกไฟล์ |
destDir | File : dir ในเครื่องที่จะแยกไฟล์ไป |
shouldExtract | : เพรดิเคตที่จะเจาะลึกหากควรแยก ZipEntry |
ขว้าง |
---|
| หากไม่สามารถแตกไฟล์ได้ |
public static File extractZipToTemp (File zipFile,
String nameHint)
แยกไฟล์ zip ไปยังไดเร็กทอรีชั่วคราวที่ขึ้นต้นด้วยสตริง
พารามิเตอร์ |
---|
zipFile | File : ไฟล์ zip ที่จะแตกไฟล์ |
nameHint | String : คำนำหน้าสำหรับไดเร็กทอรีชั่วคราว |
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 ในการดาวน์โหลดบางส่วน |
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 บางส่วนที่เนื้อหาของรายการไดเร็กทอรีกลางเริ่มต้น |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo)
รับรายการ {link CentralDirectoryInfo} สำหรับไฟล์ในไฟล์ ZIP
พารามิเตอร์ |
---|
partialZipFile | File : อ็อบเจ็กต์ ERROR(/File) ของไฟล์ zip บางส่วนที่มีรายการไดเรกทอรีกลาง |
endCentralDirInfo | EndCentralDirectoryInfo : ออบเจ็กต์ EndCentralDirectoryInfo ของไฟล์ zip |
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 ในการดาวน์โหลดบางส่วน |
gzipFile
public static void gzipFile (File file,
File gzipFile)
วิธีการช่วยเหลือในการสร้างไฟล์เดียวในเวอร์ชัน gzip
พารามิเตอร์ |
---|
file | File : ไฟล์ต้นฉบับ |
gzipFile | File : ไฟล์สำหรับวางเนื้อหาที่ถูกบีบอัด |
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 : เริ่มออฟเซ็ตของไฟล์ที่จะแยก |
คลายซิปPartialZipFolder
public static void unzipPartialZipFolder (File targetFile,
CentralDirectoryInfo zipEntry)
แยกโฟลเดอร์ที่ร้องขอออกจากไฟล์ zip บางส่วนและใช้การอนุญาตที่เหมาะสม
พารามิเตอร์ |
---|
targetFile | File : ERROR(/File) ที่จะบันทึกไฟล์ที่แตกออกมา |
zipEntry | CentralDirectoryInfo : ออบเจ็กต์ CentralDirectoryInfo ของไฟล์ที่จะแยกจากไฟล์ zip บางส่วน |
วิธีการที่ได้รับการป้องกัน
ตรวจสอบปลายทางDir
protected static void validateDestinationDir (File destDir,
String filename)
พารามิเตอร์ |
---|
destDir | File |
filename | String |