[java] GZIP 압축 방법을 사용하여 압축 파일 해제하기

GZIP으로 파일 압축하기

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.GZIPOutputStream;

public class GZIPExample {

    public static void compressFile(String sourceFile, String targetFile) {
        byte[] buffer = new byte[1024];
        
        try (FileInputStream in = new FileInputStream(sourceFile);
             GZIPOutputStream out = new GZIPOutputStream(new FileOutputStream(targetFile))) {
            
            int len;
            while ((len = in.read(buffer)) > 0) {
                out.write(buffer, 0, len);
            }
            
            System.out.println("File compressed successfully");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

GZIP으로 파일 해제하기

GZIP으로 압축된 파일을 해제하려면 GZIPInputStream을 사용하여 파일을 읽고 원본 파일로 내보내야 합니다. 아래는 예제 코드입니다.

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.GZIPInputStream;

public class GZIPExample {

    public static void decompressFile(String compressedFile, String targetFile) {
        byte[] buffer = new byte[1024];
        
        try (GZIPInputStream in = new GZIPInputStream(new FileInputStream(compressedFile));
             FileOutputStream out = new FileOutputStream(targetFile)) {
            
            int len;
            while ((len = in.read(buffer)) > 0) {
                out.write(buffer, 0, len);
            }
            
            System.out.println("File decompressed successfully");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

이제 GZIP을 사용하여 파일을 압축하고 해제하는 방법에 대해 간략히 알아보았습니다. GZIP은 Java에서 파일 처리를 보다 효율적으로 만들어주는 유용한 도구입니다.

원하는 경우 Java GZIP 관련 문서를 참고하시기 바랍니다.