6

OpenRead在执行以下代码时..我在语句中遇到异常:

找不到中央目录记录的结尾。

但是,我可以通过 Windows 资源管理器毫无问题地打开 zip 文件。

有什么想法吗?

string zipPath = @"c:\testfiles\MMM_C13000_2016M08.zip";
   using (ZipArchive archive = ZipFile.OpenRead(zipPath))
   {
       foreach (ZipArchiveEntry entry in archive.Entries)
       {
       }
   }
4

1 回答 1

2

可以以两种不同的方式处理 zip 文件。您可以简单地从头开始顺序读取,随时处理本地标头和压缩数据。或者,您可以使用 zip 文件末尾的中央目录来查找条目并通过在文件中查找来处理它们。

似乎 zip 文件已损坏或末尾有垃圾,导致一种方法无法工作,而另一种方法则无法工作。

于 2016-09-08T13:35:29.490 回答