Я нашел код ниже в переполнении стека, который я пробовал, но не знал, как его использовать.Попытка Zip разных папок в указанном каталоге с использованием ZipFile
В основном я хочу, чтобы иметь возможность заархивировать все файлы отдельно, используя foreach loop, но у меня не будет списка файлов, поскольку они меняются каждый раз.
Так как я могу получить список папок/каталогов внутри корневого каталога в массив?
public static void CreateZipFile(string fileName, IEnumerable<string> files)
{
var zip = ZipFile.Open(fileName, ZipArchiveMode.Create);
foreach (var file in files)
{
zip.CreateEntryFromFile(file, Path.GetFileName(file), CompressionLevel.Optimal);
}
zip.Dispose();
}
['Directory.GetFiles()'] (https://msdn.microsoft.com/en-us/library/07wt70x2 (v = vs.110) .aspx)? Непонятно, что именно вы хотите сделать. Что это за «все файлы», о которых вы говорите? Что такое «корневой каталог»? – CodeCaster
В основном, c: // root_folder/= корневая папка/верхний каталог, внутри этого есть список подпапок или вспомогательных каталогов, которые были добавлены случайным образом, как я могу их закрепить в отдельных ZIP-файлах. это означает, что мне нужен мой код для чтения всех этих подпапок и хранения их в массиве, а затем использовать цикл foreach для их zip-адресов. –
Итак, ['Directory.GetDirectories()'] (https://msdn.microsoft.com/en- нас/библиотека/c1sez4sc (v = vs.110) .aspx). – CodeCaster