Galen.Ci.EntityFramework.Utilities.ZipUtility.Unzip C# (CSharp) Method

Unzip() public static method

public static Unzip ( string targetDirectoryPath, ZipArchive archive ) : void
targetDirectoryPath string
archive System.IO.Compression.ZipArchive
return void
        public static void Unzip(string targetDirectoryPath, ZipArchive archive)
        {
            foreach (var zipEntry in archive.Entries)
            {
                var outFilePath = Path.Combine(targetDirectoryPath, zipEntry.FullName);
                var outFileInfo = new FileInfo(outFilePath);
                if (!outFileInfo.Directory.Exists)
                {
                    outFileInfo.Directory.Create();
                }

                Stream outFileStream = null;
                Stream inputStream = null;
                try
                {
                    outFileStream = new FileStream(
                        outFilePath,
                        FileMode.CreateNew,
                        FileAccess.Write,
                        FileShare.None);

                    inputStream = zipEntry.Open();

                    inputStream.CopyTo(outFileStream);
                }
                finally
                {
                    outFileStream.SafeDispose();
                    inputStream.SafeDispose();
                }
            }
        }
    }