博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# Note17: 使用Ionic.Zip.dll实现解压缩文件
阅读量:6554 次
发布时间:2019-06-24

本文共 3113 字,大约阅读时间需要 10 分钟。

首先下载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:

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

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

 

转载于:https://www.cnblogs.com/carsonzhu/p/7305829.html

你可能感兴趣的文章
自制Kindle电子书转化的实用技巧
查看>>
PyCon 2018:Facebook如何在4年间全面转向Python3?
查看>>
Flutter 布局(三)- FittedBox、AspectRatio、ConstrainedBox详解
查看>>
Spring的常用注解
查看>>
java.lang.OutOfMemoryError总结
查看>>
腾讯技术工程 | 腾讯AI Lab解析2017 NIPS三大研究方向,启动教授及学生合作项目...
查看>>
lync客户端外网登陆提示exchange连接错误
查看>>
UIStackView相关
查看>>
上海某软件公司电话面试分享
查看>>
TCP 和 UDP 协议发送数据包的大小 (转载)
查看>>
用Alamofire进行网络请求的一段代码解析(一)
查看>>
elasticsearch的percolator操作
查看>>
windows 定时任务:schtasks,定时关闭网易云音乐
查看>>
C# Note17: 使用Ionic.Zip.dll实现解压缩文件
查看>>
nullnullDataTable 排序
查看>>
Codeforces Ilya and Queries
查看>>
Viewport
查看>>
〖Linux〗Debian 7.1.0 Wheezy使用ltib报错的解决办法
查看>>
〖Android〗(how-to) fix k860/k860i buletooth.
查看>>
static与线程安全 -摘自网络
查看>>