ICSharpCode.SharpZipLib压缩的文件不能解压的原因

ICSharpCode.SharpZipLib压缩的文件不能解压的原因

今天用ICSharpCode.SharpZipLib做压缩,发现一个问题:就是压缩出来的文件,手动解压缩没有问题,但是用程序解压缩就报错。百思不得其解。


后来,偶然放到百度云上,发现百度云预览出来的压缩包中的文件大小竟然是4G!真正的文件只有32K,原来如此!


经常查找代码,原来是压缩的时候,没有判断文件是否压缩结束,结果写进去的文件结尾不对,采用如下代码以后,问题解决!注意红色箭头处的代码。


推荐阅读