C# - 压缩gzip中的文件和文件夹

时间:2016-03-10 17:30:26

标签: c# file compression gzip rar

我需要创建一个压缩文件(rar,gz或其他女巫支持大文件和大型压缩文件)。我需要创建文件夹并添加由文件夹分隔的文件。 示例:我有像这样的文件夹结构

Folder 1
  Folder 1.1
  Folder 1.2
  Folder 1.3
Folder 2
  Folder 2.1
    Folder 2.1.1

在每个文件夹中我都有一些文件。 我需要在压缩文件中复制结构 zip压缩显然有一些限制,如文件大小和压缩文件大小。 我试过GZipStream,但我没有发现如何在gz文件中创建文件夹。

1 个答案:

答案 0 :(得分:1)

GZIP只能压缩流(因此名称为GZip Stream )。这就是为什么gzip经常与tar一起使用(比如.tar.gz文件),其中tar从文件夹结构中创建一个存档,gzip压缩该存档。

如果您无法使用ZipArchive或ZipFile(System.IO.Compression.FileSystem)用于您的目的,最好的选择是外部库/包,例如SharpZipLibSharpCompress。< / p>