Suraj
Suraj

Reputation: 36547

DotNetZip - rename file entry in zip file while compressing

Using DotNetZip, is it possible to compress a file such that the zip lists a different file name for a file than the file name on disk? For example, I want to add myFile.txt to a zip file, but I want it to be called otherFile.txt.

Upvotes: 24

Views: 15013

Answers (2)

Martin
Martin

Reputation: 40325

From the DotNetZip FAQ:

Add an entry, overriding its name in the archive

  using (ZipFile zip1 = new ZipFile())
  {
      zip1.AddFile("myFile.txt").FileName = "otherFile.txt"; 
      zip1.Save(archiveName);
  }

Upvotes: 52

Bob G
Bob G

Reputation: 1246

        var zip = new ZipFile(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "test.zip"));
        var e = zip.AddFile(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "testfile.pdf"), "/");
        e.FileName = "PewPewGotcha.pdf";
        zip.Save();

Once the ZipFile is saved, the name is updated.

Upvotes: 3

Related Questions