0

尝试以下操作时,我收到错误“集合已修改;枚举操作可能无法执行。”。如何循环浏览 Zip 条目并更新它们?

using (ZipArchive archive = ZipFile.Open(@"c:\file.zip",ZipArchiveMode.Update))
{
    foreach (ZipArchiveEntry entry in archive.Entries)
    {
        archive.CreateEntryFromFile(@"c:\file.txt", entry.FullName);
    }
}
4

1 回答 1

0

枚举时无法更新集合。

您可以改为转换为 for 循环。

for (int i = 0; i < archive.Entries.Count; i++)
{
    archive.CreateEntryFromFile(@"c:\file.txt", archive.Entries[i].FullName);
}

您可能会发现阅读Enumerators上的 API 参考很有帮助。

“枚举器可用于读取集合中的数据,但不能用于修改底层集合。”

于 2018-02-08T09:47:18.023 回答