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)

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 : 구분 기호를 포함한 파일의 상대 경로

던지기
zip에 파일을 추가하지 못한 경우

적용권한

public static void applyPermission (File targetFile, 
                CentralDirectoryInfo zipEntry)

중앙 디렉터리 항목에 구성된 파일 권한을 적용합니다.

매개변수
targetFile File : 권한을 설정할 ERROR(/File) 입니다.

zipEntry CentralDirectoryInfo : 파일 권한이 포함된 CentralDirectoryInfo 개체입니다.

던지기
파일에 액세스하지 못한 경우.

닫기우편번호

public static void closeZip (ZipFile zipFile)

모든 예외를 무시하고 열려 있는 ERROR(/ZipFile) 닫습니다.

매개변수
zipFile ZipFile : 닫을 파일

createZip

public static File createZip (File dir)

주어진 디렉토리와 모든 내용을 포함하는 임시 zip 파일을 생성하는 유틸리티 방법입니다.

매개변수
dir File : 압축할 디렉터리

보고
File 디렉토리 내용을 포함하는 임시 zip ERROR(/File)

던지기
zip 파일 생성에 실패한 경우

createZip

public static File createZip ( files, 
                String name)

주어진 파일을 포함하는 임시 zip 파일을 생성하는 유틸리티 방법입니다.

매개변수
files : 압축할 파일 목록

name String : 확장자 없이 생성된 zip 파일의 기본 이름입니다.

보고
File 디렉토리 내용을 포함하는 임시 zip ERROR(/File)

던지기
zip 파일 생성에 실패한 경우

createZip

public static File createZip (File dir, 
                String name)

주어진 디렉토리와 모든 내용을 포함하는 임시 zip 파일을 생성하는 유틸리티 방법입니다.

매개변수
dir File : 압축할 디렉터리

name String : 확장자 없이 생성된 zip 파일의 기본 이름입니다.

보고
File 디렉토리 내용을 포함하는 임시 zip ERROR(/File)

던지기
zip 파일 생성에 실패한 경우

createZip

public static File createZip ( files)

주어진 파일을 포함하는 임시 zip 파일을 생성하는 유틸리티 방법

매개변수
files : 압축할 파일 목록

보고
File 디렉토리 내용을 포함하는 임시 zip ERROR(/File)

던지기
zip 파일 생성에 실패한 경우

createZip

public static void createZip (File dir, 
                File zipFile)

주어진 디렉토리와 모든 내용을 포함하는 zip 파일을 생성하는 유틸리티 방법입니다.

매개변수
dir File : 압축할 디렉터리

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 : 추출할 filePath

보고
File ERROR(/File) 또는 찾을 수 없는 경우 null

던지기
파일 추출에 실패한 경우

extractZip

public static void extractZip (ZipFile zipFile, 
                File destDir)

zip 파일의 전체 내용을 지정된 디렉토리로 추출하는 유틸리티 방법

매개변수
zipFile ZipFile : 추출할 ERROR(/ZipFile)

destDir File : 파일을 추출할 로컬 디렉터리

던지기
파일 추출에 실패한 경우

extractZip

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

zip 파일의 내용을 지정된 디렉토리로 추출하는 유틸리티 방법

매개변수
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 : 중앙 디렉터리 항목을 포함하는 부분 zip 파일의 ERROR(/File) 개체입니다.

endCentralDirInfo EndCentralDirectoryInfo : zip 파일의 EndCentralDirectoryInfo 개체입니다.

useZip64 boolean : 부분 다운로드에서 zip64 형식을 지원하는 부울입니다.

보고
zip 파일의 CentralDirectoryInfo 목록

던지기
IO예외

getZipCentralDirectoryInfos

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

zip 파일의 파일에 대한 {link CentralDirectoryInfo} 목록을 가져옵니다.

매개변수
partialZipFile File : 중앙 디렉터리 항목을 포함하는 부분 zip 파일의 ERROR(/File) 개체입니다.

endCentralDirInfo EndCentralDirectoryInfo : zip 파일의 EndCentralDirectoryInfo 개체입니다.

offset long : 중앙 디렉터리 항목의 내용이 시작되는 부분 zip 파일의 오프셋입니다.

보고
zip 파일의 CentralDirectoryInfo 목록

던지기
IO예외

getZipCentralDirectoryInfos

public static  getZipCentralDirectoryInfos (File partialZipFile, 
                EndCentralDirectoryInfo endCentralDirInfo)

zip 파일의 파일에 대한 {link CentralDirectoryInfo} 목록을 가져옵니다.

매개변수
partialZipFile File : 중앙 디렉터리 항목을 포함하는 부분 zip 파일의 ERROR(/File) 개체입니다.

endCentralDirInfo EndCentralDirectoryInfo : zip 파일의 EndCentralDirectoryInfo 개체입니다.

보고
zip 파일의 CentralDirectoryInfo 목록

던지기
IO예외

getZipCentralDirectoryInfos

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

zip 파일의 파일에 대한 {link CentralDirectoryInfo} 목록을 가져옵니다.

매개변수
partialZipFile File : 중앙 디렉터리 항목을 포함하는 부분 zip 파일의 ERROR(/File) 개체입니다.

endCentralDirInfo EndCentralDirectoryInfo : zip 파일의 EndCentralDirectoryInfo 개체입니다.

offset long : 중앙 디렉터리 항목의 내용이 시작되는 부분 zip 파일의 오프셋입니다.

useZip64 boolean : 부분 다운로드에서 zip64 형식을 지원하는 부울입니다.

보고
zip 파일의 CentralDirectoryInfo 목록

던지기
IO예외

gzip파일

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 이고, 그렇지 않으면 false입니다. 그렇지 않으면 true

던지기
파일을 열거나 읽을 수 없는 경우

unzip부분Zip파일

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

부분 zip 파일에서 요청된 파일을 추출합니다.

이 방법에서는 압축 시 모든 파일이 동일한 디스크에 있다고 가정합니다. 아직 다음 기능을 지원하지 않습니다.

4GB보다 큰 Zip 파일

ZIP64(압축 크기에 대한 ZipLocalFileHeader 업데이트 필요)

암호화된 zip 파일

심링크

매개변수
partialZip File : zip 파일의 일부인 ERROR(/File) 입니다.

targetFile File : 추출된 파일을 저장할 ERROR(/File) 입니다.

zipEntry CentralDirectoryInfo : 부분 zip 파일에서 추출할 파일의 CentralDirectoryInfo 개체입니다.

localFileHeader LocalFileHeader : 부분 zip 파일에서 추출할 파일의 LocalFileHeader 개체입니다.

startOffset long : 추출할 파일의 시작 오프셋입니다.

던지기
IO예외

unzipPartialZip폴더

public static void unzipPartialZipFolder (File targetFile, 
                CentralDirectoryInfo zipEntry)

부분 zip 파일에서 요청된 폴더를 추출하고 적절한 권한을 적용하십시오.

매개변수
targetFile File : 추출된 파일을 저장할 ERROR(/File) 입니다.

zipEntry CentralDirectoryInfo : 부분 zip 파일에서 추출할 파일의 CentralDirectoryInfo 개체입니다.

던지기
IO예외

보호된 방법

verifyDestinationDir

protected static void validateDestinationDir (File destDir, 
                String filename)

매개변수
destDir File

filename String