在C#实现文件的压缩
时间: 2024-09-19 19:02:01 浏览: 32
在C#中,你可以使用内置的`System.IO.Compression`命名空间来实现文件的压缩。主要的库有`ZipArchive`用于创建、读取和提取ZIP格式的压缩文件,以及`DeflateStream`或`GZipStream`用于数据级别的压缩。
以下是一个简单的示例,演示如何使用`ZipArchive`来压缩一个文件:
```csharp
using System.IO;
using System.IO.Compression;
public void CompressFile(string sourcePath, string destinationPath)
{
using (var archive = new ZipArchive(destinationPath, ZipArchiveMode.Create, true))
{
// 获取源文件的基本信息
var fileInfo = new FileInfo(sourcePath);
// 创建一个新的档案条目
var archiveEntry = archive.CreateEntry(fileInfo.Name);
// 使用FileStream读取源文件内容并写入压缩条目
using (var entryStream = archiveEntry.Open())
{
using (var fileStream = fileInfo.OpenRead())
{
fileStream.CopyTo(entryStream);
}
}
}
}
阅读全文