[java] ZIP 압축 방법을 사용하여 파일 백업을 압축하는 방법

1. Maven을 이용한 Zip 라이브러리 추가

먼저 Maven 프로젝트의 pom.xml 파일에 다음 종속성을 추가합니다.

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-compress</artifactId>
    <version>1.21</version>
</dependency>

이렇게 하면 Apache Commons Compress 라이브러리가 프로젝트에 추가됩니다.

2. Zip 압축하기

다음은 파일을 ZIP 형식으로 압축하는 Java 코드의 예시입니다.

import org.apache.commons.compress.archivers.ArchiveEntry;
import org.apache.commons.compress.archivers.ArchiveOutputStream;
import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream;
import org.apache.commons.compress.utils.IOUtils;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class ZipExample {

    public static void compressFileToZip(File file, File zipFile) throws IOException {
        try (FileInputStream fis = new FileInputStream(file);
             FileOutputStream fos = new FileOutputStream(zipFile);
             ArchiveOutputStream aos = new ZipArchiveOutputStream(fos)) {
            ArchiveEntry entry = aos.createArchiveEntry(file, file.getName());
            aos.putArchiveEntry(entry);
            IOUtils.copy(fis, aos);
            aos.closeArchiveEntry();
        }
    }

    public static void main(String[] args) throws IOException {
        File fileToCompress = new File("exampleFile.txt");
        File zipFile = new File("exampleFile.zip");
        compressFileToZip(fileToCompress, zipFile);
    }
}

위의 예시 코드는 Apache Commons Compress 라이브러리를 사용하여 파일을 ZIP 형식으로 압축하는 방법을 보여줍니다.

이제 파일을 압축하는 Java 코드를 사용하여 파일을 압축할 수 있습니다.

참고 문헌: