1

我正在尝试选择要压缩的文件夹中的文件和文件夹,但它似乎正在做的是选择所有文件夹,直到我选择的文件夹以及最终文件夹中的文件,而不是那里的文件夹并将它们拉上拉链。因此,例如在 tbFolder 我有字符串:“C:\Users\tomb\Desktop\DeOld\Mota7” 我想选择这个文件夹并压缩这个文件夹的全部内容、图像和所有内容。但发生的情况如下:

在此处输入图像描述

它将文件夹结构创建到我要压缩的文件夹,并仅在其中添加文件而不是文件夹。我猜我需要调整这条线:

System.IO.Directory.GetFiles(DirectoryToZip)

这是整个代码:

Private Sub btnCreate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCreate.Click

        Dim ZipFile As String = "C:\Releases\" & drpService.Text & "-" & DateTime.Now.ToString("YYmmDD") & ".zip"
        Dim DirectoryToZip As String = tbFolder.Text
        Dim filenames As String() = System.IO.Directory.GetFiles(DirectoryToZip)

        Using zip As ZipFile = New ZipFile
            zip.AddFiles(filenames)
            zip.Save(ZipFile)
        End Using


    End Sub
4

1 回答 1

1

如果您使用的是DotNetZip,他们的网站上有一个示例可以添加整个目录

zip.AddDirectory(DirectoryToZip, "RootFolderInZip");
于 2012-05-23T13:37:43.340 回答