void ExtractZipFile(string zipFile, string outDir) { ZipInputStream zip = new ZipInputStream(File.OpenRead(zipFile)); ZipEntry entry; while ((entry = zip.GetNextEntry()) != null) { string file = Path.Combine(outDir, entry.Name); Directory.CreateDirectory(Path.GetDirectoryName(file)); using (var output = File.OpenWrite(file)) zip.WriteTo(output); } }