成都网站建设设计

将想法与焦点和您一起共享

C#解压缩DotNetZip

DotNetZipLib类库的地址:http://dotnetzip.codeplex.com/

我们提供的服务有:网站设计、成都网站制作、微信公众号开发、网站优化、网站认证、渭源ssl等。为上千余家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的渭源网站制作公司

C#解压缩DotNetZip

将压缩包解压引用 :

C#解压缩DotNetZip

注意:以下所有代码都是控制台应用程序

先来一个测试(生成一个压缩包):

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Ionic.Zip;
namespace ZipKayer
{
    public class Program
    {
        public static void Main()
        {
            Console.WriteLine("Press a path to zip by ENTER: ");
            string ZipFileToCreate = Console.ReadLine();
            Console.WriteLine("Press a path to create by ENTER:");
            string DirectoryToZip = Console.ReadLine();
            try
            {
                using (ZipFile zip = new ZipFile())
                {
                    String[] filenames = System.IO.Directory.GetFiles(DirectoryToZip);
                    foreach (String filename in filenames)
                    {
                        Console.WriteLine("Adding {0}...", filename);
                        ZipEntry e = zip.AddFile(filename);
                        e.Comment = "Added by Cheeso's CreateZip utility.";
                    }
                    zip.Comment = String.Format("This zip archive was created by the CreateZip example application on machine '{0}'",
                       System.Net.DNS.GetHostName());
                    zip.Save(ZipFileToCreate);
                }
            }
            catch (System.Exception ex1)
            {
                Console.WriteLine("exception: " + ex1);
            }
            Console.Read();
        }
    }
}

代码解释:

①:ZipFileToCreate : 为生成Zip文件的字符串path

②:DirectoryToZip : 需要生成Zip的文件夹的Path

以上2个String变量都采取控制台输入方式

现测试如下:

C#解压缩DotNetZip

运行程序:

C#解压缩DotNetZip

运行的结果 , 会在相关目录下(ZipFileToCreate)生成一个Housing.zip的压缩文件

C#解压缩DotNetZip

打开ZIP文件发现,Root是Happy(E盘以下的一个文件夹),而且中文的docx名称

C#解压缩DotNetZip

现在看看如何解压:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Ionic.Zip;
namespace ZipKayer
{
    public class Program
    {
        public static void Main()
        {
            try
            {
                ReadOptions options = new ReadOptions { StatusMessageWriter = System.Console.Out };
                using (ZipFile zip = ZipFile.Read(@"E:\Happy\Housing\Housing.zip", options))
                {
                    zip.ExtractAll(@"E:\Happy");
                }
            }
            catch (System.Exception ex1)
            {
                System.Console.Error.WriteLine("exception: " + ex1);
            }
            Console.Read();
        }
    }
}

解释:

        ①:@"E:\Happy\Housing\Housing.zip" -> 需要解压的Zip文件

        ②:@"E:\Happy" -> 解压后的文本存放的位置

C#解压缩DotNetZip

所以 , 对于程序来说,没事不要取中文名字。


文章标题:C#解压缩DotNetZip
文章转载:http://chengdu.cdxwcx.cn/article/gjgjso.html