• 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安全设置”前面的勾去掉后再编译运行。

  • 相关阅读:
    oracle 游标例子
    oracle 认识
    Scut游戏服务器引擎之新手入门
    Scut游戏服务器引擎6.5.8.6发布
    Scut游戏服务器引擎之Unity3d接入
    Scut游戏服务器引擎6.1.5.6发布,直接可运行,支持热更新
    ScutSDK 0.9版本发布
    Scut游戏服务器引擎6.0.5.2发布
    Scut游戏服务器引擎6.0.5.1发布
    Scut游戏服务器引擎6.0.5.0发布-支持C#脚本
  • 原文地址:https://www.cnblogs.com/carsonzhu/p/7305829.html
Copyright © 2020-2023  润新知