我想使用 C# 压缩和解压缩文件夹。GZipStream 的问题在于它需要文件名,因此我需要编写递归逻辑。
我可以以某种方式做到这一点,给出源文件夹名称和目标文件名来压缩具有层次结构的完整文件夹。我也需要对文件夹进行解压缩,反之亦然。如果直接通过 C#/.net 无法实现,请建议一些免费的 3rd 方。
我想使用 C# 压缩和解压缩文件夹。GZipStream 的问题在于它需要文件名,因此我需要编写递归逻辑。
我可以以某种方式做到这一点,给出源文件夹名称和目标文件名来压缩具有层次结构的完整文件夹。我也需要对文件夹进行解压缩,反之亦然。如果直接通过 C#/.net 无法实现,请建议一些免费的 3rd 方。
我已经多次使用免费的SharpZipLib,我建议你看看它。它非常易于使用,并且适用于我所有的用例。
现在包含在 .NET 4.5 中,如果您不想使用非 microsoft 库。
GZip 只处理单个文件,这就是为什么在 *nix 下您最终必须先将它们归档到 TAR 文件中,然后再进行压缩。
如果您想要多个文件/文件夹,则需要一种支持它的格式,例如 ZIP。
你可以看看这个库。
看看DotNetZip Lib。