码迷,mamicode.com
首页 > Windows程序 > 详细

C#压缩文件

时间:2017-11-19 02:13:21      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:bytes   llb   sharp   col   压缩文件   .sh   string   update   lis   

使用SharpZipLib插件

using ICSharpCode.SharpZipLib.Zip;

 public static void BatchDownFile(List<string> urlList)
        {
            /*删除之前的临时文件*/
            string path = Path.Combine(privateDiskBasePath,"tempZip");
            DirectoryInfo dirInfo = new DirectoryInfo(path);
            if (dirInfo.Exists)
            {
                dirInfo.Delete(true);
            }
            dirInfo.Create();
            string fileName = Path.Combine(path, "打包文件.zip");
            using (ZipFile zip = ZipFile.Create(fileName))
            {
                zip.BeginUpdate();
                zip.SetComment("压缩包");

                foreach (var item in urlList)
                {
                    if (File.Exists(item))//判断是文件还是文件夹
                    {
                        byte[] buffer = null;
                        try
                        {

                            buffer = File.ReadAllBytes(item);
                        }
                        catch
                        {
                        }

                        if (buffer != null && buffer.Length > 0)
                        {
                            StreamDataSource dataSource = new StreamDataSource(buffer);
                            string[] fileNameSplit = item.Split(\\);

                            zip.Add(dataSource, fileNameSplit[fileNameSplit.Length - 1]);
                        }
                    }
                }
                zip.CommitUpdate();
            }
            DownFile("打包文件.zip", fileName);
        }

 

C#压缩文件

标签:bytes   llb   sharp   col   压缩文件   .sh   string   update   lis   

原文地址:http://www.cnblogs.com/tangchun/p/7858344.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!