[java] 자바에서 파일을 압축할 때 압축 메타데이터 추가하기

먼저, java.util.zip.ZipOutputStream 클래스를 사용하여 압축 파일에 쓰기를 수행합니다. 메타데이터를 추가하려는 파일을 ZipEntry로 생성한 후 ZipOutputStream에 추가하면 됩니다.

다음은 압축 파일에 메타데이터를 추가하는 간단한 예제 코드입니다.

import java.io.*;
import java.util.zip.*;

public class ZipFileWithMetadata {
    public static void main(String[] args) {
        String sourceFile = "source.txt";
        String zipFile = "compressed.zip";

        try (FileInputStream fis = new FileInputStream(sourceFile);
             FileOutputStream fos = new FileOutputStream(zipFile);
             ZipOutputStream zos = new ZipOutputStream(fos)) {

            ZipEntry zipEntry = new ZipEntry(sourceFile);
            zipEntry.setComment("This is a sample comment");

            zos.putNextEntry(zipEntry);

            byte[] buffer = new byte[1024];
            int len;
            while ((len = fis.read(buffer)) > 0) {
                zos.write(buffer, 0, len);
            }

            zos.closeEntry();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위의 코드 예제에서는 ZipEntry.setComment(String comment) 메서드를 사용하여 압축 파일에 코멘트를 추가하고 있습니다.

추가로, 메타데이터를 처리하는 방법에 대한 레퍼런스는 Oracle 공식 문서에서 확인할 수 있습니다.