c# – 如何使用离子库压缩文件

我已经完成了这个备份我的数据库

工作正常……

    private void backupDatabase()
    {

        txtbackup.AppendText("Starting Backup...");    
        Process sd = null;
        const  string backupcmd = @"C:\wamp\www\access\mysqldump.exe";
        string filepath = @"C:\folder\Access\";
        string dbHost = "local";
        string dbuser = "root";
        string dbName = "access";
        string backupName = "Backup.sql";
        ProcessStartInfo r1 = new ProcessStartInfo(backupcmd, string.Format("-h {0} -u {1} {2} -r {3}", dbHost, dbuser, dbName, backupName));


        r1.CreateNoWindow = true;
        r1.WorkingDirectory = filepath;
        r1.UseShellExecute = false;
        r1.WindowStyle = ProcessWindowStyle.Minimized;
        r1.RedirectStandardInput = false;

        sd = Process.Start(r1);
         sd.WaitForExit();

        if (!sd.HasExited)
        {
             sd.Close();
        }
        sd.Dispose();
        r1 = null;
        sd = null;
        txtbackup.Clear();
        txtbackup.AppendText("Backup is Finished");

    } 

它的工作正常…但我想将backup.sql存储为此路径中的zip文件

@"C:\folder\Access\";

我有这个库Ionic.Zip.Reduced但我不知道如何压缩文件并存储在给定的路径….

最佳答案 该库非常易于使用:

using (var zip = new ZipFile())
{
    zip.AddFile("Backup.sql");

    zip.Save(@"C:\folder\Access\"Backup.zip");
}

甚至their homepage包含足以供您使用的样品.

点赞