SharpZipLib使用示例
SharpZipLib是一个使用C#编写的Zip操作类库,在VB.NET、C#或其他的.NET语言中都可以使用它创建Zip文件、并进行读取和更新等操作。SharpZipLib目前的版本为0.85,下边通过几个例子来说明它的使用(使用前需引用命名空间ICSharpCode.SharpZipLib.Zip)。
1.创建zip文件,无法添加文件夹
using (ZipFile zip = ZipFile.Create(@"E:\test.zip"))
{
zip.BeginUpdate();
zip.Add(@"E:\五笔打字法.txt");
zip.Add(@"E:\网站推广方法.txt");
zip.CommitUpdate();
}
{
zip.BeginUpdate();
zip.Add(@"E:\五笔打字法.txt");
zip.Add(@"E:\网站推广方法.txt");
zip.CommitUpdate();
}
2.创建zip文件,只能压缩文件夹
(new FastZip()).CreateZip(@"E:\test.zip", @"E:\test\", true, "");
3.添加一个文件到zip文件中,无法添加文件夹
using (ZipFile zip = new ZipFile(@"E:\test.zip"))
{
zip.BeginUpdate();
zip.Add(@"E:\房屋租赁协议.doc");
zip.CommitUpdate();
}
{
zip.BeginUpdate();
zip.Add(@"E:\房屋租赁协议.doc");
zip.CommitUpdate();
}
4.列出zip文件中所有的文件
using (ZipFile zip = new ZipFile(@"E:\test.zip"))
{
string list = string.Empty;
foreach (ZipEntry entry in zip)
{
list += entry.Name + "\r\n";
}
MessageBox.Show(list);
}
{
string list = string.Empty;
foreach (ZipEntry entry in zip)
{
list += entry.Name + "\r\n";
}
MessageBox.Show(list);
}
5.删除zip文件中的一个文件
using (ZipFile zip = new ZipFile(@"E:\test.zip"))
{
zip.BeginUpdate();
zip.Delete(@"房屋租赁协议.doc");
zip.Delete(@"a\2.txt");
zip.CommitUpdate();
}
{
zip.BeginUpdate();
zip.Delete(@"房屋租赁协议.doc");
zip.Delete(@"a\2.txt");
zip.CommitUpdate();
}
6.解压zip文件中所有文件
(new FastZip()).ExtractZip(@"E:\test.zip", @"E:\mzwucom\", "");
官方站点: http://www.icsharpcode.net/OpenSource/SharpZipLib/Default.aspx
------------------------------------------------
dnawo:天才在于勤奋,知识在于积累!