I'm creating a folder in C# and I'm hoping to zip it up as soon as I've created it. I've had a look around (How to zip a folder), (http://dotnetzip.codeplex.com/) but no luck so far. I'm a bit apprehensive of using dotnetzip as it's last release was 5 years ago.
Is dotnetzip still relevant in Visual Studio 2015 or is there a more modern way of zipping folders in C# without using a package?
This is how I'm copying the folders;
private static void CopyDirectory(string SourcePath, string DestinationPath, bool overwriteexisting)
SourcePath = SourcePath.EndsWith(@"\") ? SourcePath : SourcePath + @"\";
DestinationPath = DestinationPath.EndsWith(@"\") ? DestinationPath : DestinationPath + @"\";
if (Directory.Exists(DestinationPath) == false)
foreach (string fls in Directory.GetFiles(SourcePath))
FileInfo flinfo = new FileInfo(fls);
flinfo.CopyTo(DestinationPath + flinfo.Name, overwriteexisting);
foreach (string drs in Directory.GetDirectories(SourcePath))
DirectoryInfo drinfo = new DirectoryInfo(drs);
CopyDirectory(drs, DestinationPath + drinfo.Name, overwriteexisting);
To zip a folder, the .Net 4.5 framework contains ZipFile.CreateFromDirectory:
string startPath = @"c:\example\start"; string zipPath = @"c:\example\result.zip"; ZipFile.CreateFromDirectory(startPath, zipPath);