[java] GZIP 압축 방법을 사용하여 자바 애플리케이션 데이터 압축하기

GZIP은 파일이나 데이터 스트림을 압축하기 위한 파일 형식 및 알고리즘입니다. 자바에서 GZIP을 사용하면 텍스트, 바이너리 데이터 또는 기타 형식의 데이터를 효율적으로 압축할 수 있습니다.

1. GZIP으로 데이터 압축하기

다음은 GZIP을 사용하여 데이터를 압축하는 자바 코드 예제입니다.

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

public class GZIPExample {
    public static void main(String[] args) {
        String data = "압축할 데이터";
        try (FileOutputStream fos = new FileOutputStream("compressed.gz");
             GZIPOutputStream gzipOS = new GZIPOutputStream(fos)) {
            gzipOS.write(data.getBytes());
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위 코드는 “압축할 데이터”를 GZIP으로 압축한 다음 “compressed.gz”라는 파일에 저장합니다.

2. GZIP으로 데이터 압축 해제하기

이제 GZIP으로 압축된 데이터를 해제하는 방법을 살펴보겠습니다.

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

public class GZIPExample {
    public static void main(String[] args) {
        try (FileInputStream fis = new FileInputStream("compressed.gz");
             GZIPInputStream gzipIS = new GZIPInputStream(fis);
             BufferedReader reader = new BufferedReader(new InputStreamReader(gzipIS))) {
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위 코드는 “compressed.gz” 파일에서 GZIP으로 압축 해제한 데이터를 읽어와 콘솔에 출력합니다.

결론

이제 여러분은 자바에서 GZIP을 사용하여 데이터를 압축하고 해제하는 방법에 대해 알게 되었습니다. GZIP을 사용하면 데이터를 효율적으로 저장하고 전송할 수 있습니다.