如何使用内置的 .net 压缩类来压缩目录?

2023-12-04

使用 System.IO.Compression 命名空间类 GZIPStream 和 DeflateStream 我成功地可以压缩和解压缩单个文件。但是,如果我传递目录名作为压缩目标,则会出现安全异常。我是否必须(递归地)枚举所有文件和子目录才能压缩目录?

(也许来自 codeplex 的 dotnetzip 会更好地处理这个问题,但这不是我现在想要的)。


当你使用GZipStream等等,你正在压缩一个stream;不是一个文件。GZip没有文件头信息,因此没有明智的方法来打包多个文件。为此,您需要 .zip 之类的文件; #ziplib 可以完成这项工作,但您仍然 (IIRC) 需要手动为其提供每个文件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用内置的 .net 压缩类来压缩目录? 的相关文章

随机推荐