尝试以下操作时,我收到错误"收集已修改;枚举操作可能无法执行。"。如何循环Zip条目并更新它们?
using (ZipArchive archive = ZipFile.Open(@"c:\file.zip",ZipArchiveMode.Update))
{
foreach (ZipArchiveEntry entry in archive.Entries)
{
archive.CreateEntryFromFile(@"c:\file.txt", entry.FullName);
}
}
答案 0 :(得分:0)
在枚举时,您无法更新集合。
您可以改为转换为for循环。
for (int i = 0; i < archive.Entries.Count; i++)
{
archive.CreateEntryFromFile(@"c:\file.txt", archive.Entries[i].FullName);
}
您可能会发现在Enumerators上阅读API参考会很有帮助。
&#34;枚举器可用于读取集合中的数据,但不能用于修改基础集合。&#34;