嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元微信扫码支付:2 元
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
使用C#对文件/流进行GZip\Deflate 的压缩和解压缩
private void GZipProcess(Stream src, Stream desc, CompressionMode mode)
{
int len = 1024000;
byte[] buffer = new byte[len];
using (GZipStream compress = (mode == CompressionMode.Compress) ? new GZipStream(desc, CompressionLevel.Optimal) : new GZipStream(src, CompressionMode.Decompress))
{
if (mode == CompressionMode.Compress)
{
//循环写入压缩的流
while ((len = src.Read(buffer, 0, buffer.Length)) > 0)
{
compress.Write(buffer, 0, len);
}
desc.Flush();
}
else
{
//循环读取解压的流
while ((len = compress.Read(buffer, 0, buffer.Length)) > 0)
{
desc.Write(buffer, 0, len);
}
desc.Flush();
}
}
}