解压缩和进度条同步显示
使用sharpziplib.dll动态库解压zip文件时候,如何在解压缩的时候,使进度条同步显示。。
我现在想在压缩文件解压之前获取文件实际大小,但是不知道怎么实现,求各位大牛指点。。。
------解决方案--------------------文件字节:var file = new FileInfo(zipPath).Length;
显示进度条,你找下sharpziplib库中有没有传委托的重载,如果没有,就自己加一个
类似
UnZip(string filePath,其他参数.., Action<int> reportProcess)
{
while(解压中)
{
...
var percent = 根据Zip流.Position或已解压的文件数与总长度的百分数作为进度;
reportProcess(percent);
}
}
var reportProcess = percent => this.progressBar.Value = percent;
UnZip(zipPath,...,reportProcess);