Java如何压缩Gzip格式的文件?
在此代码示例中,我们将学习如何使用gzip压缩来压缩文件。从本质上讲,gzip只能压缩一个文件,不能将其用于压缩目录以及该目录中的所有文件。
您将用于以gzip格式压缩文件的类包括GZipOutputStream,FileInputStream和FileOutputStream类。压缩文件的步骤在下面的代码段注释中进行了描述。
package org.nhooo.example.zip;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.GZIPOutputStream;
public class GZipCompressExample {
public static void main(String[] args) {
//GZip输入和输出文件。
String sourceFile = "data.txt";
String targetFile = "output.gz";
try (
//创建要输入的文件的文件输入流
//压缩。
FileInputStream fis = new FileInputStream(sourceFile);
//创建文件输出流,将gzip结果写入
//指定的文件名。
FileOutputStream fos = new FileOutputStream(targetFile);
//使用文件输出流创建gzip输出流对象
//作为论点。
GZIPOutputStream gzos = new GZIPOutputStream(fos)) {
//定义用于迭代文件的缓冲区和临时变量
//输入流。
byte[] buffer = new byte[1024];
int length;
//读取并输入文件输入流的所有内容
//到gzip输出流对象。
while ((length = fis.read(buffer)) > 0) {
gzos.write(buffer, 0, length);
}
//完成文件压缩并关闭所有流。
gzos.finish();
} catch (IOException e) {
e.printStackTrace();
}
}
}
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短