-->

DotNetZip add files without creating folders

2019-01-11 13:02发布

问题:

using (ZipFile zip = new ZipFile())
{
    foreach(string file in Directory.GetFiles(folder))
    {
        zip.AddFile(file, Path.GetFileName(file));
    }
    zip.Save("test.zip"));
}

Each time I add a file, it's creating a new subfolder for it.

So I want to end up with:

test.zip
    -  myDoc.doc
    -  myPdf.pdf

but I'm ending up with:

test.zip
    -  myDoc.doc
        -  myDoc.doc
    -  myPdf.pdf
        -  myPdf.pdf

回答1:

How about just:

zip.AddFile(file,"");

or

zip.AddFile(file,@"\");


回答2:

This is what I did and it worked.

zip.AddFile(file, "..\...\".ToString.Replace("..\...\", Nothing))

It sends the file back to 2 folders and replaces the .....\ with Nothing.



回答3:

zip.AddFile(file, "..\...\".ToString.Replace("..\...\", null))