zoukankan      html  css  js  c++  java
  • 解压缩文件

    需要通过引用ICSharpCode.SharpZipLib.Zip(程序包里面下载安装),来实现文件的压缩与解压
     
    /// <summary>
            /// 实例化FastZip
            /// </summary>
            public static FastZip fz = new FastZip();
     
    /// <summary>
            /// 压缩文件
            /// </summary>
            /// <param name="zipFilePath">压缩文件的路径与名称</param>
            /// <param name="FilePath">被压缩的文件路径</param>
            /// <param name="ZipPWD">解压密码(null代表无密码)</param>
            /// <returns></returns>
            public static string FileToZip(string zipFilePath, string FilePath, string ZipPWD)
            {
                string state = "Fail...";
                try
                {
                    FileInfo fi = new FileInfo(FilePath);
                    string filename = fi.Name;
                    string dirname = fi.DirectoryName;
                    fz.Password = ZipPWD;
                    fz.CreateZip(zipFilePath, dirname, false, filename);
                    state = "Success !";
                }
                catch(Exception ex)
                {
                    state += "," + ex.Message;
                }
                return state;
            }
     
    /// <summary>
            /// 压缩文件夹
            /// </summary>
            /// <param name="DirPath">被压缩的文件夹路径</param>
            /// <param name="ZipPath">压缩文件夹的路径与名称</param>
            /// <param name="ZipPWD">解压密码(null代表无密码)</param>
            /// <returns></returns>
            public static string DirToZip(string DirPath, string ZipPath, string ZipPWD)
            {
                string state = "Fail...";
                try
                {
                    fz.Password = ZipPWD;
                    fz.CreateZip(ZipPath, DirPath, false, null);
                    state = "Success !";
                }
                catch (Exception ex)
                {
                    state += "," + ex.Message;
                }
                return state;
            }
     
    /// <summary>
            /// 解压Zip
            /// </summary>
            /// <param name="DirPath">解压后存放路径</param>
            /// <param name="ZipPath">Zip的存放路径</param>
            /// <param name="ZipPWD">解压密码(null代表无密码)</param>
            /// <returns></returns>
            public static string Compress(string DirPath, string ZipPath, string ZipPWD)
            {
                string state = "Fail...";
                try
                {
                    fz.Password = ZipPWD;
                    fz.ExtractZip(ZipPath, DirPath, null);
                    state = "Success !";
                }
                catch (Exception ex)
                {
                    state += "," + ex.Message;
                }
                return state;
            }
     
  • 相关阅读:
    A__Writeup_杂项 “百越杯”第四届福建省高校网络空间安全大赛——致我的战队HeroCat的所有成员
    A_由局域网到广域网的探索-------正在更新中ing
    B_由迷茫转向理性
    CTF__(1)web之Cookie
    网络安全常识介绍__(1)黑客获取密码的介绍
    AQS
    生产者-消费者模式
    synchronized修饰static方法与非static方法的区别
    Java内存溢出和内存泄露
    final、finally与finalize的区别
  • 原文地址:https://www.cnblogs.com/qiu18359243869/p/10969855.html
Copyright © 2011-2022 走看看