下载 Ionic.Zip.dll 组件,添加引用,引用命名空间 using Ionic.Zip;
[html]
view plain
copy
- #region Ionic.Zip 压缩文件
- // 压缩方法一
- public void ExeCompOne()
- {
- string FileName = DateTime.Now.ToString("yyMMddHHmmssff");
- //ZipFile 实例化一个压缩文件保存路径的一个对象 zip
- using (ZipFile zip = new ZipFile(@"E:\\yangfeizai\\"+ FileName+".zip",Encoding.Default))
- {
- // 加密压缩
- zip.Password = "123456";
- // 将要压缩的文件夹添加到 zip 对象中去 (要压缩的文件夹路径和名称)
- zip.AddDirectory(@"E:\\yangfeizai\\"+"12051214544443");
- // 将要压缩的文件添加到 zip 对象中去, 如果文件不存在抛错 FileNotFoundExcept
- //zip.AddFile(@"E:\\yangfeizai\\12051214544443\\"+"Jayzai.xml");
- zip.Save();
- }
- }
- // 压缩方法二
- public void ExeCompTwo()
- {
- string FileName = DateTime.Now.ToString("yyMMddHHmmssff");
- //ZipFile 实例化一个对象 zip
- using (ZipFile zip = new ZipFile())
- {
- // 加密压缩
- zip.Password = "123456";
- // 将要压缩的文件夹添加到 zip 对象中去 (要压缩的文件夹路径和名称)
- zip.AddDirectory(@"E:\\yangfeizai\\"+"12051214544443");
- // 将要压缩的文件添加到 zip 对象中去, 如果文件不存在抛错 FileNotFoundExcept
- //zip.AddFile(@"E:\\yangfeizai\\12051214544443\\"+"Jayzai.xml");
- // 用 zip 对象中 Save 重载方法保存压缩的文件,参数为保存压缩文件的路径
- zip.Save(@"E:\\yangfeizai\\"+ FileName +".zip");
- }
- }
- #endregion
- #region // 删除压缩包中的文件
- //3. 从 zip 文件中删除一个文件, 注意无法直接删除一个文件夹
- public void ExeDelete(string FileName)
- {
- using (ZipFile zip = ZipFile.Read(@"E:\\yangfeizai\\"+ FileName +".zip"))
- {
- //zip["Jayzai.xml"] = null;
- // 删除 zip 对象中的一个文件
- zip.RemoveEntry("Jayzai.xml");
- zip.Save();
- }
- }
- #endregion
[csharp]
view plain
copy
- // 从 zip 文件中解压出一个文件
- public void ExeSingleDeComp(string FileName)
- {
- using (ZipFile zip = ZipFile.Read(@"E:\\yangfeizai\\"+FileName+ ".zip"))
- {
- zip.Password = "123456";// 密码解压
- //Extract 解压 zip 文件包的方法,参数是保存解压后文件的路基
- zip["Jayzai.xml"].Extract(@"E:\\yangfeizai\\Test");
- }
- }
- // 从 zip 文件中解压全部文件
- public void ExeAllDeComp(string FileName)
- {
- using (ZipFile zip = ZipFile.Read(@"E:\\yangfeizai\\" + FileName + ".zip"))
- {
- zip.Password = "123456";// 密码解压
- foreach (ZipEntry entry in zip)
- {
- //Extract 解压 zip 文件包的方法,参数是保存解压后文件的路基
- entry.Extract(@"E:\\yangfeizai\\Test");
- }
- }
- }