在Java中,你可以使用BufferedWriter
結合GZIPOutputStream
來實現數據的壓縮。以下是一個簡單的示例,展示了如何使用BufferedWriter
和GZIPOutputStream
將字符串寫入一個壓縮文件中:
import java.io.*;
import java.util.zip.GZIPOutputStream;
public class GZIPCompressedWriter {
public static void main(String[] args) {
String input = "這是一個需要壓縮的文本。";
String outputZipFile = "compressed_output.txt.gz";
try {
writeCompressed(input, outputZipFile);
System.out.println("文件已成功壓縮。");
} catch (IOException e) {
System.err.println("發生錯誤:" + e.getMessage());
}
}
public static void writeCompressed(String input, String outputZipFile) throws IOException {
try (BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new GZIPOutputStream(new FileOutputStream(outputZipFile)))) {
writer.write(input);
writer.flush();
}
}
}
在這個示例中,我們首先創建了一個BufferedWriter
,它使用GZIPOutputStream
作為其輸出流。然后,我們將輸入字符串寫入BufferedWriter
,這將自動壓縮數據并將其寫入指定的文件。最后,我們關閉了BufferedWriter
以釋放資源。