解压缩文件
需要通过引用ICSharpCode.SharpZipLib.Zip(程序包里面下载安装),来实现文件的压缩与解压
/// <summary>
/// 实例化FastZip
/// </summary>
public static FastZip fz = new FastZip();
/// <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);
/// 压缩文件
/// </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;
}
}
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);
/// 压缩文件夹
/// </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;
}
}
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);
/// 解压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;
}
}
catch (Exception ex)
{
state += "," + ex.Message;
}
return state;
}