• SharpZipLib使用示例


    SharpZipLib 是一个免费的Zip操作类库,可以利用它对 ZIP 等多种格式进行压缩与解压。SharpZipLib使用C#编写的,在VB.NET、C#或其他的.NET语言中都可以使用它创建Zip文件、并进行读取和更新等操作。下载网址:http://www.icsharpcode.net/OpenSource/SharpZipLib/Download.aspx。目前的版本为0.85。

    1、创建zip文件,并添加文件:

    1. using (ZipFile zip = ZipFile.Create(@"E:\test.zip")) 
    2.     zip.BeginUpdate(); 
    3.     zip.Add(@"E:\文件1.txt"); 
    4.     zip.Add(@"E:\文件2.txt"); 
    5.     zip.CommitUpdate(); 

    2、将文件夹压缩为文件:
    (new FastZip()).CreateZip(@"E:\test.zip", @"E:\test\", true, "");
    最后一个参数是使用正则表达式表示的过滤文件规则。CreateZip方法有3个重载版本,其中有目录过滤参数、文件过滤参数及用于指定是否进行子目录递归的一个bool类型的参数。
    3、将文件添加到已有zip文件中:
    using (ZipFile zip = new ZipFile(@"E:\test.zip"))
    {
        zip.BeginUpdate();
        zip.Add(@"E:\test.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);
    }
    5、删除zip文件中的一个文件
    using (ZipFile zip = new ZipFile(@"E:\test.zip"))
    {
        zip.BeginUpdate();
        zip.Delete(@"test.doc");
        zip.Delete(@"test22.txt");
        zip.CommitUpdate();
    }
    6、解压zip文件中文件到指定目录下
    (new FastZip()).ExtractZip(@"E:\test.zip", @"E:\test\", "");
    7、常用类:
    ZipInputStream、GZipInputStream用于解压缩Deflate、GZip格式流,ZipOutputStream、GZipOutputStream用于压缩Deflate、GZip格式流。
    StreamUtil类包含了几个Stream处理辅助方法:
        ①、Copy(Stream, Stream, Byte[])用于从一个Stream对象中复制数据到另一Stream对象。有多个重写
        ②、ReadFully(Stream, Byte [])用于从Stream对象中读取所有的byte数据。有多个重写

     

  • 相关阅读:
    python基础学习8(浅拷贝与深拷贝)
    适配器模式(Adapter)
    NHibernate的调试技巧和Log4Net配置
    查看表字段的相关的系统信息
    Asp.net MVC 3 开发一个简单的企业网站系统
    ie8 自动设置 兼容性 代码
    同时安装vs2010和VS2012后IEnumerable<ModelClientValidationRule>编译错误
    各种合同样本
    使用远程桌面的朋友可能经常会遇到“超出最大允许连接数”的问题,
    弹出窗口全屏显示:window.showModalDialog与window.open全屏显示
  • 原文地址:https://www.cnblogs.com/sig556/p/1770440.html
Copyright © 2020-2023  润新知