【问题标题】:Compressing a folder on a network path using DotNetZip使用 DotNetZip 压缩网络路径上的文件夹
【发布时间】:2013-11-15 05:14:30
【问题描述】:

我不确定这是否与我的理解有差距。我必须压缩位于同一网络中的服务器上的文件夹。假设我在 XYZ 域(与我的机器相同的网络)上的 ABC 机器的 D 驱动器上有一个文件夹 WebSite。我使用下面的代码来压缩它

        using (ZipFile myZip = new ZipFile())
        {
            myZip.AddSelectedFiles("*.*", @"\\ABC.XYZ.com\d$\WebSite\", true);

            myZip.Save(@"\\ABC.XYZ.com\d$\Test.zip");
        }

使用此代码,我在服务器 ABC 的 D 驱动器中获得了一个存档,但是,zip 的结构看起来像这样。

Test.zip -> ABC.XYZ.com -> d$ -> 网站

是否有其他方法可以在网络路径上获取 Zip 文件,例如 Test.zip -> 网站。

【问题讨论】:

  • 不,它不是重复的。如果我理解正确的话,这不是关于存储没有路径的文件,而是将文件存储在不同的 ZIP 根目录中。
  • 我试过 AddFile() 枚举每个文件..但它对我不起作用..在网站文件夹中我有包含相同文件名的子文件夹..使用 AddFile 它会抛出一个字典错误...

标签: c# .net compression zip dotnetzip


【解决方案1】:

使用 ZipFile.AddDirectory 方法:

using (ZipFile myZip = new ZipFile())
{
    myZip.AddDirectory(@"\\ABC.XYZ.com\d$\WebSite\", "WebSite");
    myZip.Save(@"\\ABC.XYZ.com\d$\Test.zip");
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-23
    • 2021-08-09
    • 2011-12-12
    • 2012-12-22
    相关资源
    最近更新 更多