ZipUtil
public
class
ZipUtil
extends Object
java.lang.Object
|
↳ |
com.android.tradefed.util.ZipUtil
|
압축 관련 작업을 위한 도우미 클래스
요약
공개 메서드 |
static
void
|
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)
지정된 파일이 포함된 임시 zip 파일을 만드는 유틸리티 메서드입니다.
|
static
File
|
createZip(File dir, String name)
지정된 디렉터리와 모든 콘텐츠가 포함된 임시 ZIP 파일을 만드는 유틸리티 메서드입니다.
|
static
File
|
createZip( files)
지정된 파일이 포함된 임시 zip 파일을 만드는 유틸리티 메서드
|
static
void
|
createZip(File dir, File zipFile)
지정된 디렉터리와 모든 콘텐츠가 포함된 ZIP 파일을 만드는 유틸리티 메서드입니다.
|
static
void
|
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)
지정된 디렉터리에 zip 파일의 콘텐츠를 추출하는 유틸리티 메서드
|
static
File
|
extractZipToTemp(File zipFile, String nameHint)
문자열이 접두사로 추가된 임시 디렉터리에 ZIP 파일 추출
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, boolean useZip64)
zip 파일의 파일에 대한 {링크 CentralDirectoryInfo} 목록을 가져옵니다.
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset)
zip 파일의 파일에 대한 {링크 CentralDirectoryInfo} 목록을 가져옵니다.
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo)
zip 파일의 파일에 대한 {링크 CentralDirectoryInfo} 목록을 가져옵니다.
|
static
|
getZipCentralDirectoryInfos(File partialZipFile, EndCentralDirectoryInfo endCentralDirInfo, long offset, boolean useZip64)
zip 파일의 파일에 대한 {링크 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 파일에서 요청된 폴더를 추출하고 적절한 권한을 적용합니다.
|
공개 생성자
ZipUtil
public ZipUtil ()
공개 메서드
addToZip
public static void addToZip (ZipOutputStream out,
File file,
relativePathSegs)
지정된 파일과 해당 콘텐츠를 ZipOutputStream에 재귀적으로 추가합니다.
applyPermission
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 : 압축할 디렉터리입니다. |
createZip
public static File createZip ( files,
String name)
지정된 파일이 포함된 임시 zip 파일을 만드는 유틸리티 메서드입니다.
매개변수 |
files |
: zip할 파일 목록 |
name |
String : 확장자 없이 생성된 ZIP 파일의 기본 이름입니다. |
createZip
public static File createZip (File dir,
String name)
지정된 디렉터리와 모든 콘텐츠가 포함된 임시 ZIP 파일을 만드는 유틸리티 메서드입니다.
매개변수 |
dir |
File : 압축할 디렉터리입니다. |
name |
String : 확장자 없이 생성된 ZIP 파일의 기본 이름입니다. |
createZip
public static File createZip ( files)
지정된 파일이 포함된 임시 zip 파일을 만드는 유틸리티 메서드
createZip
public static void createZip (File dir,
File zipFile)
지정된 디렉터리와 모든 콘텐츠가 포함된 ZIP 파일을 만드는 유틸리티 메서드입니다.
매개변수 |
dir |
File : 압축할 디렉터리입니다. |
zipFile |
File : 만들려는 zip 파일 - 아직 존재해서는 안 됩니다. |
createZip
public static void createZip ( files,
File zipFile)
지정된 파일이 포함된 ZIP 파일을 만드는 유틸리티 메서드
매개변수 |
files |
: zip할 파일 목록 |
zipFile |
File : 만들려는 zip 파일 - 아직 존재해서는 안 됩니다. |
public static File extractFileFromZip (ZipFile zipFile,
String filePath)
zip 파일에서 특정 파일 하나를 tmp 파일로 추출하는 유틸리티 메서드
매개변수 |
zipFile |
ZipFile : 추출할 ERROR(/ZipFile) |
filePath |
String : 추출할 filePath입니다. |
public static void extractZip (ZipFile zipFile,
File destDir)
지정된 디렉터리에 zip 파일의 전체 콘텐츠를 추출하는 유틸리티 메서드
매개변수 |
zipFile |
ZipFile : 추출할 ERROR(/ZipFile) |
destDir |
File : 파일을 추출할 로컬 디렉터리입니다. |
public static void extractZip (ZipFile zipFile,
File destDir,
shouldExtract)
지정된 디렉터리에 zip 파일의 콘텐츠를 추출하는 유틸리티 메서드
매개변수 |
zipFile |
ZipFile : 추출할 ERROR(/ZipFile) |
destDir |
File : 파일을 추출할 로컬 디렉터리입니다. |
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)
zip 파일의 파일에 대한 {링크 CentralDirectoryInfo} 목록을 가져옵니다.
매개변수 |
partialZipFile |
File : 중앙 디렉터리 항목이 포함된 부분 ZIP 파일의 ERROR(/File) 객체입니다. |
endCentralDirInfo |
EndCentralDirectoryInfo : zip 파일의 EndCentralDirectoryInfo 객체입니다. |
useZip64 |
boolean : 부분 다운로드에서 zip64 형식을 지원하는 불리언입니다. |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
long offset)
zip 파일의 파일에 대한 {링크 CentralDirectoryInfo} 목록을 가져옵니다.
매개변수 |
partialZipFile |
File : 중앙 디렉터리 항목이 포함된 부분 ZIP 파일의 ERROR(/File) 객체입니다. |
endCentralDirInfo |
EndCentralDirectoryInfo : zip 파일의 EndCentralDirectoryInfo 객체입니다. |
offset |
long : 중앙 디렉터리 항목의 콘텐츠가 시작되는 부분 ZIP 파일의 오프셋입니다. |
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo)
zip 파일의 파일에 대한 {링크 CentralDirectoryInfo} 목록을 가져옵니다.
getZipCentralDirectoryInfos
public static getZipCentralDirectoryInfos (File partialZipFile,
EndCentralDirectoryInfo endCentralDirInfo,
long offset,
boolean useZip64)
zip 파일의 파일에 대한 {링크 CentralDirectoryInfo} 목록을 가져옵니다.
매개변수 |
partialZipFile |
File : 중앙 디렉터리 항목이 포함된 부분 ZIP 파일의 ERROR(/File) 객체입니다. |
endCentralDirInfo |
EndCentralDirectoryInfo : zip 파일의 EndCentralDirectoryInfo 객체입니다. |
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 입니다. |
unzipPartialZipFile
public static void unzipPartialZipFile (File partialZip,
File targetFile,
CentralDirectoryInfo zipEntry,
LocalFileHeader localFileHeader,
long startOffset)
부분 zip 파일에서 요청된 단일 파일을 추출합니다.
이 메서드는 압축 시 모든 파일이 동일한 디스크에 있다고 가정합니다.
ERROR(/targetFile)
가 디렉터리인 경우 콘텐츠 없이 빈 디렉터리가 생성됩니다.
ERROR(/targetFile)
가 심볼릭 링크인 경우 심볼릭 링크가 생성되지만 확인되지는 않습니다.
다음 기능은 아직 지원되지 않습니다.
ZIP 파일이 4GB를 초과함
ZIP64(압축된 크기에 ZipLocalFileHeader 업데이트 필요)
암호화된 ZIP 파일
unzipPartialZipFolder
public static void unzipPartialZipFolder (File targetFile,
CentralDirectoryInfo zipEntry)
부분 ZIP 파일에서 요청된 폴더를 추출하고 적절한 권한을 적용합니다.
보호된 메서드
validateDestinationDir
protected static void validateDestinationDir (File destDir,
String filename)
매개변수 |
destDir |
File |
filename |
String |