zoukankan      html  css  js  c++  java
  • C# Note17: 使用Ionic.Zip.dll实现解压缩文件

    首先下载ionic.Zip.dll,然后在项目中添加该引用,之后就可以在cs中使用了:

            using Ionic.Zip;  
       
          #region Ionic.Zip压缩文件
            private readonly string zipFileName = "testzip";
            private readonly string destinationPath;
            private readonly string destinationPathPrefix = "E:\";
    
            //压缩方法一
            public void ExeCompressOne()
            {
                string timeStamp = DateTime.Now.ToString("yyMMddHHmmssff");
                destinationPath = destinationPathPrefix + zipFileName + timeStamp;
                string destinationFilePath = destinationPath + ".zip";
    
                //ZipFile实例化一个压缩文件保存路径的一个对象zip
                using (ZipFile zip = new ZipFile(destinationFilePath, Encoding.Default))
                {
                    //压缩率
                    zipFile.CompressionLevel = CompressionLevel.Level9;
                    zipFile.UseZip64WhenSaving = Zip64Option.Never;
                    //加密压缩
                    zip.Password = "123456";
                    //将要压缩的文件夹添加到zip对象中去(要压缩的文件夹路径和名称)
                    zip.AddDirectory(destinationPath);
                    //将要压缩的文件添加到zip对象中去,如果文件不存在抛错FileNotFoundExcept
                    //zip.AddFile(@"E:\yangfeizai\12051214544443\"+"Jayzai.xml");
                    zip.Save();
                }
            }
            
            //压缩方法二
            public void ExeCompressTwo()
            {
                string timeStamp = DateTime.Now.ToString("yyMMddHHmmssff");
                destinationPath = destinationPathPrefix + zipFileName + timeStamp;
                string destinationFilePath = destinationPath + ".zip";     
    
                //ZipFile实例化一个对象zip
                using (ZipFile zip = new ZipFile())
                {
                    //压缩率
                    zipFile.CompressionLevel = CompressionLevel.Level9;
                    zipFile.UseZip64WhenSaving = Zip64Option.Never;
                    //加密压缩
                    zip.Password = "123456";
                    //将要压缩的文件夹添加到zip对象中去(要压缩的文件夹路径和名称)
                    zip.AddDirectory(destinationPath);
                    //将要压缩的文件添加到zip对象中去,如果文件不存在抛错FileNotFoundExcept
                    //zip.AddFile(@"E:\yangfeizai\12051214544443\"+"Jayzai.xml");
                    //用zip对象中Save重载方法保存压缩的文件,参数为保存压缩文件的路径
                    zip.Save(destinationFilePath);
                }
            }
            #endregion
     
            #region 删除压缩包中的文件
            //从zip文件中删除一个文件,注意无法直接删除一个文件夹
            public void ExeDelete(string FileName)
            {
                using (ZipFile zip = ZipFile.Read(destinationFilePath))
                {
                    //zip["test1.xml"] = null;
                    //删除zip对象中的一个文件,假设存在文件为test1.xml
                    zip.RemoveEntry("test1.xml");
                    zip.Save();
                }
            }
            #endregion
    
            #region 压缩完成后删除临时文件
            var d = new DirectoryInfo(destinationPath);
            d.Delete(true);
            #endregion
    

      

      

    PS:C#如何以管理员身份运行程序

    【 在使用winform程序获取调用cmd命令提示符时,如果是win7以上的操作系统,会需要必须以管理员身份运行才会执行成功,否则无效果或提示错误。】

     在Visual Studio 中--解决方案资源管理器--右键项目名称--属性,找到“安全性”选项,勾选“启用ClickOnce安全设置”,这时,在项目下面会多出一个“app.manifest”的文件,选中它,并找到代码段<requestedExecutionLevel level="asInvoker" uiAccess="false" />,将其改为:<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />,然后再次打开“属性--安全性”界面,将“启用ClickOnce安全设置”前面的勾去掉后再编译运行。

  • 相关阅读:
    Liunx安装MQTT服务器
    ORACLE 把一个用户的权限给与另一个用户
    liunx 后台运行python代码
    ORACLE APEX 交互式网格动态操作
    oracle 创建表字段
    oracle 触发器
    ORACLE 程序包
    ORACLE 游标基本使用
    oracle 不等于 查询列中含有null
    liunx安装oracle 客户端
  • 原文地址:https://www.cnblogs.com/carsonzhu/p/7305829.html
Copyright © 2011-2022 走看看