Как сжать каталог в zip-файл программно

Я хочу сжать весь каталог, который может иметь любое количество подкаталогов в единственный zip-файл.

Я могу сжать единственный файл в zip-файл программно.

Для сжатия всего каталога я могу думать о рекурсивной программе, которая идет через каждый подкаталог и сжимает его.

Но Есть ли какой-либо простой способ сжать всю папку с помощью подобного кода, не имея необходимость писать какие-либо рекурсивные функции?

16
задан ashwnacharya 23 March 2010 в 09:02
поделиться

3 ответа

Используя DotNetZip , в классе ZipFile есть метод AddDirectory (), который делает то, что вы хотите:

using (var zip = new Ionic.Zip.ZipFile())
{
    zip.AddDirectory("DirectoryOnDisk", "rootInZipFile");
    zip.Save("MyFile.zip");
}

Этот пример и многие другие доступны на codeplex .

22
ответ дан 30 November 2019 в 17:04
поделиться

Взгляните на один из этих API:

5
ответ дан 30 November 2019 в 17:04
поделиться
2
ответ дан 30 November 2019 в 17:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: