使用 .Net 4.5 ZipFile,无法解压缩使用 Windows zip 压缩的文件(右键单击发送到压缩)



我在办公室的 ASP.NET Web应用程序中实现了一项功能,让人们上传zip文件,其中有一个XML文件可以导入到数据库中。

问题是,我在使用System.IO.Compression.ZipFile时收到此错误:

"中央目录末尾的预期条目数没有 对应于中央目录中的条目数。

当我使用System.IO.Compression.DeflateStream时,我收到此错误:

"块长度与其补码不匹配。"

Windows zip 不是使用相同的库吗?从.Net到Windows zip的zip格式/算法是否不同?

如果有人能提出解决方案,我将不胜感激。

这可能是 .NET 实现中用于 deflate、zip 等支持的另一个错误。 你应该尝试DotNetZip。

我发现了这个问题,似乎 .net 库解压缩文件没有任何问题,问题在于文件上传到我的 asp.net 应用程序后写入磁盘的方式,编码问题已经到位,因为我将确切的字节写入磁盘,我能够使用 .Net 库解压缩它。

感谢大家的贡献。

最新更新