为了用要提取的文件数更新进度条。我的程序正在浏览Zip文件列表,并收集其中的文件数量。合并的数量约为22000个文件。
我正在使用的代码:
foreach (string filepath in zipFiles)
{
ZipArchive zip = ZipFile.OpenRead(filepath);
archives.Add(zip);
filesCounter += zip.Entries.Count;
}
但是zip.Entries.Count
似乎正在进行某种遍历,并且完成此计数需要花费很多时间(如果互联网连接状况不佳,则需要几分钟,甚至更多,如果有,则是这样。)>
要想有多少可以改善的概念,我将以上内容与7-Zip的性能进行了比较。我带了一个包含〜11000个文件和文件夹的zip文件:
将快速计算出文件数量的任何想法,建议或任何其他方法,将受到赞赏。
为了用要提取的文件数更新进度条。我的程序正在浏览Zip文件列表,并收集其中的文件数量。总数约为22000 ...
我的进度条问题已通过采用新方法解决。