C#解压缩zip文件

时间:2016-12-07 12:19:27

标签: c# zip

我遇到了ZIP文件解压缩的问题。 首先,我使用系统工具自己创建了7z文件。 我试图通过7zip系统工具手动解压缩它,它成功了。 但是,当我尝试从代码中执行此操作时:

 string zipPath = @"c:\Test.7z";
 string extractPath = @"c:\extractHere";
 ZipFile.ExtractToDirectory(zipPath, extractPath);
  

我得到一个异常:类型的未处理异常   发生'System.IO.InvalidDataException'   System.IO.Compression.FileSystem.dll。

     

无法找到中央目录记录的结尾

我试过阅读论坛,到处都有人说文件已损坏。 我确定它不是。 我也试过这段代码:

 using (ZipArchive archive = ZipFile.OpenRead(zipPath))
                        {
                            foreach (ZipArchiveEntry entry in archive.Entries)
                            {
                                if (entry.FullName.EndsWith(".txt", StringComparison.OrdinalIgnoreCase))
                                {
                                    entry.ExtractToFile(Path.Combine(extractPath, entry.FullName));
                                }
                            }
                        }

此代码在第一个通道(ZipFile.OpenRead(zipPath)上返回相同的错误。 我在项目中引用了两个程序集:

  • System.IO.Compression
  • System.IO.Compression.FileSystem

任何想法可能出错?

0 个答案:

没有答案