是一种在C#中使用System.IO.Compression.ZipFile来添加没有createFromDirectory的文件夹的方法吗?

时间:2016-11-30 14:24:12

标签: c# .net file zip

我需要压缩包含文件夹,公共文件和zip文件的文件夹。但我需要除了" zip"延期。此外,我需要创建zip文件或更新它,如果已经创建。

为此,我检查所有文件和目录,然后将文件添加到zip文件中。到目前为止一切顺利,但我无法找到添加或更新文件夹的方法。

这是我最后一次尝试过:

var files = Directory.GetFiles(directoryToCompress).Where(name => !name.EndsWith(".zip", true, System.Globalization.CultureInfo.CurrentCulture));
var directories = Directory.GetDirectories(directoryToCompress);

if (File.Exists(filenameZip))
{
    using (ZipArchive zipDest = ZipFile.Open(filenameZip,ZipArchiveMode.Update))
    {
        foreach (var file in files)
        {
            zipDest.
            zipDest.CreateEntryFromFile(file, Path.GetFileName(file), CompressionLevel.Optimal);
            System.IO.File.Delete(file);
        }
    }
}
else
{
    using (ZipArchive zip = ZipFile.Open(filenameZip, ZipArchiveMode.Create))
    {
        foreach (var file in files)
        {
            zip.CreateEntryFromFile(file, Path.GetFileName(file), CompressionLevel.Optimal);
            System.IO.File.Delete(file);
        }
    }
}

提前感谢任何提示或帮助

0 个答案:

没有答案