Exemplo n.º 1
0
        private void ExtractFile(ArchiveEntry entry)
        {
            if (entry.IsFolder)
            {
                return;
            }

            string dirName = Path.GetDirectoryName(entry.Path);

            if (dirName == null)
            {
                return;
            }

            Directory.CreateDirectory(Path.Combine(extractPath, dirName));

            using (var sourceStream = entry.CreateStream()){
                using (var fileStream = new FileStream(Path.Combine(extractPath, entry.Path), FileMode.OpenOrCreate, FileAccess.Write, FileShare.None)){
                    sourceStream.Seek(0, SeekOrigin.Begin);
                    sourceStream.CopyTo(fileStream);
                }
            }
        }
Exemplo n.º 2
0
        private void ExtractFile(ArchiveEntry entry)
        {
            if (entry.IsFolder)return;

            string dirName = Path.GetDirectoryName(entry.Path);
            if (dirName == null)return;

            Directory.CreateDirectory(Path.Combine(extractPath, dirName));

            using(var sourceStream = entry.CreateStream()){
                using(var fileStream = new FileStream(Path.Combine(extractPath, entry.Path), FileMode.OpenOrCreate, FileAccess.Write, FileShare.None)){
                    sourceStream.Seek(0, SeekOrigin.Begin);
                    sourceStream.CopyTo(fileStream);
                }
            }
        }