如何在SharpZipLib?中显示压缩的进展
我正在开发一个小型应用程序,将多个文件压缩到一个Zip文件。可能还有一段时间要做,可能会有一个进度条显示压缩的进度,那么是否有一种方法可以知道SharpZipLib中压缩了多少?
发布于 2012-04-22 00:02:45
是的,您可以看到输出流的大小被压缩了多少,但是这并不能显示一个进度条,您还应该知道输出流在末尾会有多大,当然您不能提前知道。
您可以在压缩单个文件时测量进度,并按文件大小按比例执行,一个文件通过(size_of_file / total_size_of_all_files) * 100移动进度百分比。
例如,假设您有3个文件:
file1.bin 1000 kb
file2.bin 500 kb
file3.bin 200 kb在第一个文件压缩移动在59%,在第二个文件之后移动它29%到88%,在第三到100%之后移动。
发布于 2012-04-22 00:09:17
如果使用DotNetZip,就会有一个SaveProgress事件告诉您它压缩了多少字节。
DotNetZip SDK中有代码示例演示如何使用它。
https://stackoverflow.com/questions/10263952
复制相似问题