ZipOutputStream — ZIP 형식 파일 쓰기 출력 스트림
ZipOutputStream — ZIP 형식 파일 쓰기 출력 스트림
ZIP 파일 형식으로 파일을 쓰기 위한 출력 스트림 필터를 구현하는 클래스예요. 압축 및 비압축 엔트리를 모두 지원해요.
본문
public class ZipOutputStream extends DeflaterOutputStream
ZIP 파일 쓰기
putNextEntry(ZipEntry)로 새 엔트리를 시작하고, 데이터를 쓴 뒤 closeEntry()로 현재 엔트리를 마무리해요. 모든 엔트리를 쓴 후 finish() 또는 close()를 호출해 중앙 디렉터리를 기록해요.
try (ZipOutputStream zos = new ZipOutputStream(Files.newOutputStream(Path.of("out.zip")))) {
zos.putNextEntry(new ZipEntry("hello.txt"));
zos.write("Hello, world!".getBytes());
zos.closeEntry();
}
주요 생성자
ZipOutputStream(OutputStream out)— 기본 문자셋으로 ZIP 출력 스트림을 생성해요.ZipOutputStream(OutputStream out, Charset charset)— 지정된 문자셋으로 생성해요.
주요 메서드
-
setMethod(int method)— 기본 압축 방법(STORED또는DEFLATED)을 설정해요. -
setLevel(int level)—DEFLATED엔트리의 압축 수준을 설정해요. -
putNextEntry(ZipEntry e)— 새 ZIP 엔트리를 시작해요. -
closeEntry()— 현재 ZIP 엔트리를 닫아요. -
write(byte[] b, int off, int len)— 현재 엔트리의 데이터를 써요. -
finish()— 기본 스트림을 닫지 않고 ZIP 파일 쓰기를 끝내요. -
close()— ZIP 파일을 마무리하고 기본 출력 스트림을 닫아요. -
도입 시점(Since): 1.1