C# 解压缩文件
需要通过引用ICSharpCode.SharpZipLib.Zip(程序包里面下载安装),来实现文件的压缩与解压
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
/// <summary> /// 实例化FastZip /// </summary> public static FastZip fz = new FastZip();
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
/// <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; }
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
/// <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; }
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
/// <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; }