卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章16968本站已运行3323

在 C# 中使用 GZIP 格式压缩和解压缩文件

在 C# 中使用 GZIP 格式压缩和解压缩文件

要使用 GZIP 格式压缩和解压缩文件,请使用 GZipStream 类。

压缩

要压缩文件,请使用 GZipStream 类和 FileStream 类。设置以下参数。

要压缩的文件以及输出zip文件的名称。

这里,outputFile是输出文件,该文件被读入FileStream。

p>

示例

'
using(var compress = new GZipStream(outputFile, CompressionMode.Compress, false)) {
   byte[] b = new byte[inFile.Length];
   int read = inFile.Read(b, 0, b.Length);
   while (read > 0) {
      compress.Write(b, 0, read);
      read = inFile.Read(b, 0, b.Length);
   }
}

解压缩

要解压缩文件,请使用相同的 GZipStream 类。设置以下参数:源文件和输出文件的名称。

从源 zip 文件中,打开 GZipStream。

'
using (var zip = new GZipStream(inStream, CompressionMode.Decompress, true))

要解压缩,请使用循环并读取流中的数据。将其写入输出流并生成一个文件。该文件是我们解压后的文件。

示例

'
using(var zip = new GZipStream(inputStream, CompressionMode.Decompress, true)) {
   byte[] b = new byte[inputStream.Length];
   while (true) {
      int count = zip.Read(b, 0, b.Length);
      if (count != 0)
      outputStream.Write(b, 0, count);
      if (count != b.Length)
      break;
   }
}

卓越飞翔博客
上一篇: 一个用C语言修改过的Nim游戏?
下一篇: 返回列表
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏