java alder32,[java][io][ZIP]应用GZIP进行压缩和解压缩

[java][io][ZIP]使用GZIP进行压缩和解压缩

Checksum 接口:被类Adler32和CRC32实现的接口

Adler32 :使用Alder32算法来计算Checksum数目,快一些

CRC32 :使用CRC32算法来计算Checksum数目,慢一些,但更准确

CheckedInputStream :InputStream派生类,可得到输入流的校验和Checksum,用于校验数据的完整性

CheckedOutputStream :OutputStream派生类,可得到输出流的校验和Checksum, 用于校验数据的完整性

DeflaterOutputStream :压缩类的基类。

ZipOutputStream :DeflaterOutputStream的一个子类,把数据压缩成Zip文件格式。

GZIPOutputStream :DeflaterOutputStream的一个子类,把数据压缩成GZip文件格式

InflaterInputStream :解压缩类的基类

ZipInputStream :InflaterInputStream的一个子类,能解压缩Zip格式的数据

GZIPInputStream :InflaterInputStream的一个子类,能解压缩Zip格式的数据

ZipEntry 类:表示 ZIP 文件条目

ZipFile 类:此类用于从 ZIP 文件读取条目

import java.io.BufferedOutputStream;

import java.io.BufferedReader;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.FileReader;

import java.io.InputStreamReader;

import java.util.zip.GZIPInputStream;

import java.util.zip.GZIPOutputStream;

/**

*

* 使用GZIP进行压缩和解压缩.

*

*/

public class GZIPcompress {

public static void main(String[] args) throws Exception {

if(args.length == 0){

System.out.println(

"Usage: \nGZIPcompress file\n" +

"\nUses GZIP compression to compress " +

"the file to test.gz");

System.exit(1);

}

//进行压缩

BufferedReader br = new BufferedReader(new FileReader(args[0]));

BufferedOutputStream out = new BufferedOutputStream(new GZIPOutputStream(new FileOutputStream("d:\\test.gz")));

System.out.println("Writing file: ");

int c ;

while((c = br.read()) != -1){

out.write(c);

}

br.close();

out.close();

//进行解压

System.out.println("Reading file: ");

BufferedReader reader = new BufferedReader(new InputStreamReader(new GZIPInputStream(new FileInputStream("d:\\test.gz"))));

String s;

while((s = reader.readLine()) != null){

System.out.println(s);

}

reader.close();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值