C# 压缩文件(全路径格式 和单独文件压缩格式)

C#实现将文件文件压缩压缩 Title:“基础工具” 项目(压缩包帮助类)Description步骤描述:1、创建 zip 存档,该文档包含指定目录的文件子目录(单个目录)2、创建 zip 存档,该存档包含指定目录的文件目录(多个目录)3、递归删除磁盘上的指定文件夹目录及文件4、递归获取磁盘上的指定目录下所有文件的集合,返回类型是:字典[文件名,要压缩的相对文件名]5、解压Zip文件,并覆盖保存到指定的目标路径文件夹下6、获取Zip压缩包中的文件列表。 阅读详情

单文件压缩格式,表示加压后为你单独压缩的文件

=======================================================================

        /// <summary>
        /// 压缩文件
        /// </summary>
        /// <param name="FileToZip">要进行压缩的文件名</param>
        /// <param name="ZipedFile">压缩后生成的压缩文件名</param>
        /// <returns></returns>
        public bool ZipFile(string FileToZip, string ZipedFile)
        {
            //如果文件没有找到,则报错
            if (!File.Exists(FileToZip))
            {
                throw new System.IO.FileNotFoundException("指定要压缩的文件: " + FileToZip + " 不存在!");
            }
            //FileStream fs = null;
            FileStream ZipFile = null;
            ZipOutputStream ZipStream = null;
            ZipEntry ZipEntry = null;
            bool res = true;
            try
            {
                ZipFile = File.OpenRead(FileToZip);
                byte[] buffer = new byte[ZipFile.Length];
                ZipFile.Read(buffer, 0, buffer.Length);
                ZipFile.Close();
                ZipFile = File.Create(ZipedFile);
                ZipStream = new ZipOutputStream(ZipFile);           
                ZipEntry = new ZipEntry(Path.GetFileName(FileToZip));
                ZipStream.PutNextEntry(ZipEntry);
                ZipStream.SetLevel(6);
                ZipStream.Write(buffer, 0, buffer.Length);
            }
            catch
            {
                res = false;
            }
            finally
            {
                if (ZipEntry != null)
                {
                    ZipEntry = null;
                }
                if (ZipStream != null)
                {
                    ZipStream.Finish();
                    ZipStream.Close();
                }
                if (ZipFile != null)
                {
                    ZipFile.Close();
                    ZipFile = null;
                }
                GC.Collect();
                GC.Collect(1);
            }

            return res;
        }

---------------------------------------------------

用法:

 ZipClass.ZipClass Zc = new ZipClass.ZipClass(); 

 //ZipClass是一个名为ZipClass类库中的ZipClass类  ,

//实例一个类的对象就可以调用里面的方法了


            Zc.ZipFile("D:\\下载程序\\WebDownloadService\\WebDownloadService\\UploadFile\\sjpt.txt", "D:\\下载程序\\WebDownloadService\\WebDownloadService\\UploadFile\\sjpt.zip");

 

=====================================================

全路径压缩格式,指的是 你解压后的文件 是一个带有压缩路径的文件,而你需要的文件在层层路径的文件夹里

---------

   //public void ZipFileMain(string[] args)
        //   {
        //    string[] filenames = Directory.GetFiles(args[0]);

        //    Crc32 crc = new Crc32();
        //    ZipOutputStream s = new ZipOutputStream(File.Create(args[1]));

        //    s.SetLevel(6); // 0 - store only to 9 - means best compression

        //    foreach (string file in filenames)
        //    {
        //         //打开压缩文件
        //         FileStream fs = File.OpenRead(file);

        //         byte[] buffer = new byte[fs.Length];
        //         fs.Read(buffer, 0, buffer.Length);
        //         ZipEntry entry = new ZipEntry(file);

        //         entry.DateTime = DateTime.Now;

        //         // set Size and the crc, because the information
        //         // about the size and crc should be stored in the header
        //         // if it is not set it is automatically written in the footer.
        //         // (in this case size == crc == -1 in the header)
        //         // Some ZIP programs have problems with zip files that don't store
        //         // the size and crc in the header.
        //         entry.Size = fs.Length;
        //         fs.Close();

        //         crc.Reset();
        //         crc.Update(buffer);

        //         entry.Crc  = crc.Value;

        //         s.PutNextEntry(entry);

        //         s.Write(buffer, 0, buffer.Length);

        //    }

        //    s.Finish();
        //    s.Close();
        //   }

----------------------------------------------------

用法:

 //string[] FileProperties = new string[2];
            //FileProperties[0] = @"D:\下载程序\WebDownloadService\WebDownloadService\UploadFile";//待压缩文件目录
            //FileProperties[1] = @"D:\下载程序\WebDownloadService\WebDownloadService\UploadFile\sjpt.zip";  //压缩后的目标文件         
            //ZipClass.ZipClass Zc = new ZipClass.ZipClass();
            //Zc.ZipFileMain(FileProperties);
            //Response.Write("文件已经压缩成功!");

 

C#文件操作集合七(文件压缩相关) 本小节实例主要讲述C#实现使用系统WinRar进行压缩压缩的方法,详细内容如下:1、压缩方法2、解压缩方法。 文件操作是开发过程中经常遇到的,如何创建文件、处理文件、保存文件以及读取文件这些工作是每一位开发都必须经历的。 阅读详情

相关推荐

命令行方式调用winrar对文件夹进行zip压缩示例代码

调用C#自带的API进行压缩 //zip destFullPath = destFullPath + "\\" + _myConfig.zipFileName; if (File.Exists(destFullPath)) File.Delete(destFul

lee353086的专栏 8624

C#压缩文件

上述代码便是压缩文件的方法,我的测试结果如下: 这是项目源文件,我要把:高效程序员的45个习惯压缩.pdf 文件进行压缩,由图可知,确实压缩成了:高效程序员的45个习惯压缩.zip 但是当你尝试去解压这个.zip文件后,你会发现解压后得到的文件夹中包含N+1层文件夹,最后的一层文件夹中能够找到我压缩的pdf文件,这点匪夷所思,有兴趣的小虎斑可以把你们的见解贴在下面的评论上,供大家参考,同时也为LZ提供个思路,谢谢! 我示例的代码如下: 程序声明:本段程序需要引用一个dll文件,这个dll文件

qq_32110891的博客 1256

C# 中的文件压缩与解压:Zip 功能详解

通过以上的步骤,你现在可以使用 C#压缩解压文件夹了。文件压缩不仅可以节省存储空间,还能方便文件的传输。文件压缩与解压是 C# 中一个非常实用的功能,它不仅简化了文件管理的操作,还提供了更高效、更便捷的解决方案。希望这篇俏皮可爱的指南能够帮助你掌握文件压缩与解压的技巧。记得在实践中不断尝试完善,享受编程的乐趣!(注:实际上并未展示图片,如需进一步的帮助或有其他问题,随时告诉我哦!以上就是如何使用 C#压缩解压文件夹的完整指南。希望这些详细的步骤代码示例能帮助你轻松上手。

java专栏 1811

C# 压缩解压

有些时候我们需要在代码中进行解压或压缩文件,这时候怎么做呢,下面介绍两个方法

你要明白,任何问题都不是孤立存在的,一定有人曾经遇到过,并且已经有更好的解决办法了,只是我还不知道。我不应该在黑暗中独自前行,去重新发明轮子,也许我的顿悟,只是别人的基本功!我应该要站在巨人的肩膀上,学习更成熟的经验和方法,然后再来解决这个问题 1979

GZipStream

命名空间: System.IO.Compression 说明: 此类表示 GZip 数据格式,它使用无损压缩压缩文件的行业标准算法。这种格式包括一个检测数据损坏的循环冗余校验值。GZip 数据格式使用的算法与 DeflateStream 类的算法相同,但它可以扩展以使用其他压缩格式。这种格式可以通过不涉及专利使用权的方式轻松实现。gzip 的格式可以从 RFC 1952“GZIP fil...

weixin_30360497的博客 479

C# 压缩解压文件文件

C# 压缩解压文件文件

lvxingzhe3的博客 3952

C#压缩解压文件

使用C#压缩解压文件的两种方法,支持创建zip/gz/rar等常见压缩格式

【微软MVP】zhaotianff的专栏 3466

c#使用ZipArchive、ZipFile在本地压缩文件

【代码】c#使用ZipArchive、ZipFile在本地压缩文件

rxf2525xlz的博客 2319

C# 文件压缩与解压缩

C#进行压缩与解压缩

qq_42690327的博客 5401

C#中的文件压缩与解压技术详解

本文还有配套的精品资源,点击获取 简介:C#程序员可以通过***pression命名空间中的类,如GZipStream、DeflateStreamZipArchive,实现文件文件夹的压缩与解压。本文将展示如何使用C#进行文件压缩解压的代码示例,并讲解如何处理更复杂的文件操作场景,例如处理整个目录、大文件流以及多线程环境中的压缩解压。为了保证性能,会推荐使用异步方法,...

weixin_28736145的博客 2547

C#利用自带的ZipFile压缩解压zip文件

【代码】C#利用自带的ZipFile压缩解压zip文件

lvmingzhou的专栏 676

C#压缩文件

【代码】C#压缩文件夹。

m0_61918220的博客 950

c#实现文件压缩的方法

【代码】c#实现文件压缩的方法。

qq_35624605的博客 648

zipFile 压缩文件C#

ZipFile 类 定义 命名空间: System.IO.Compression 程序集: System.IO.Compression.ZipFile.dll, System.IO.Compression.FileSystem.dll, netstandard.dll 大家好, 我是个菜鸟程序员 , 最近做一个压缩文件夹并且删除的功能 , 用到了.net 自带的 zipFile 类 ...

罗汉松驻扎的工作基地 2242

C#文件压缩与解压缩全攻略:使用ZipFile与ZipArchive实现高效操作

在.NET 开发中,文件压缩与解压缩是常见的需求。无论是减少存储空间、加速网络传输,还是实现数据备份,`System.IO.Compression`命名空间都提供了强大的工具。本文将结合微软官方文档示例,详细介绍如何使用`ZipFile``ZipArchive`类完成压缩压缩任务,并涵盖安全处理、高级操作等场景。

Amon的专栏 2479

c#中的解压缩

ZipDirectory是一个C#函数,用于将指定目录中的所有文件子目录压缩成一个zip文件。这个函数使用了System.IO.Compression命名空间中的ZipArchive类。它使用ZipFile类的CreateFromDirectory方法来创建zip文件。这个示例将C:\Users\UserName\Documents\MyFolder目录中的所有文件子目录压缩成一个名为MyFolder.zip的zip文件。首先获取要解压缩文件名,然后调用UnZip方法来解压缩文件

qq_35624605的博客 1974
上一篇: C# 删除指定文件以及文件夹下的所有文件的方法
下一篇: C# 遍历指定文件夹下的指定格式文件
弹一曲温柔
博客等级 码龄15年 27粉丝 118原创
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值