.NET 4.5 中新提供的压缩类
Windows8 的开发已经如火如荼开始了,在 Windows8 中提供的 .NET Framework 已经更新到了 4.5 版,其中又增加了一些新的特性,对压缩文件的支持就是其中之一。
在 4.5 之前,处理压缩文件,我们经常需要使用第三方的类库 SharpZipLib, 现在可以直接实现了。
1.准备工作
首先做一下准备工作,需要确保你使用 .NET 4.5 版,可以在项目的属性窗口中检查一下。
然后,引用必须的程序集。
程序集有两个:System.IO.Compression 和 System.IO.Compression.FileSystem.
类似于对文件和目录的操作,对于压缩文件也提供了两种方式:ZipArchive 和 ZipFile,分别对应两个新增加的类 ZipArchive 和 ZipFile。这两个类都定义在命名空间 System.IO.Compression 中。
为了后面演示方便,我们定义一个表示压缩文件路径的常量。
const string zipFilePath = @"..\..\Sample.zip";
2. 使用 ZipArchive
先看ZipArchive的使用。
2.1 创建压缩文件
创建一个空的压缩文件,使用 ZipArchiveMode.Create 创建参数。
// 创建 Zip 文件
using (FileStream zipFileToOpen = new FileStream(zipFilePath, FileMode.Create))
using (ZipArchive arc