2016-12-14 3 views
1

Мой код распаковывает только один файл, который необходимо изменить для распаковки всех файлов в каталоге.Нужно распаковать несколько ZIP-файлов (все файлы zip в каталоге приложения)

using (ZipFile zip = ZipFile.Read(file)) //Want to change "file" with directory (for unzip all zip files on that directory) 
       { 
        foreach (ZipEntry zipFiles in zip) 
        { 
         zipFiles.Extract(currentpath, true); //Also need overwrite silenthly 
        } 
       } 

ответ

1

Ниже код позволит вам перечислить все почтовые файлы из каталога и даже параллельно:

foreach (var file in Directory.EnumerateFiles("<directory path>", "*.zip")) 
{ 
    using (ZipFile zip = ZipFile.Read(file)) //Want to change "file" with directory (for unzip all zip files on that directory) 
    { 
     foreach (ZipEntry zipFiles in zip) 
     { 
      zipFiles.Extract(currentpath, true); //Also need overwrite silenthly 
     } 
    } 
} 

вы можете преобразовать его просто Foreach, если нужно.

+0

Это должно быть из-за вас утилита Zip. Вы можете просто преобразовать его в foreach. Я обновил код. – vendettamit

+0

Thany you @vendettamit. его теперь работает ... –