Создание ZIP-архива в С#
Доброго времени суток! В данном примере мы рассмотрим как просто можно создать архив папки с файлами в C#. Код содержит комментарии.
// подключаем необходимые библиотеки для
using System.IO;
using System.IO.Compression;
using System.Collections.Generic; // для метода List.ForEach
namespace CreatingZipArchive
{
public class Program
{
public static void CreateZipArchive(string zipName, List<string> files)
{
// открываем файл zipName - в режиме создания архива
using (var archive = ZipFile.Open(zipName, ZipArchiveMode.Create))
{
// проходимся по каждому файлу в папке и добавляем его в архив
files.ForEach(file => archive.CreateEntryFromFile(file, Path.GetFileName(file)))
}
}
public static void Main(string[] args)
{
var destZipFile = @"D:\John\projects\myrusakov.zip"; // название файл архива, который будет создан
var filesInDir = Directory.GetFiles(@"D:\John\projects\blog"); // папка, файлы которой будут архивированы
// пытаемся выполнить архивацию
try
{
CreateZipArchive(destZipFile, filesInDir);
Console.WriteLine("Архив успешно создан!");
}
catch(Exception e) // но, если возникнет исключение
{
// отображаем ошибку
Console.WriteLine(e.Message);
}
}
}
}
Далее выполняем команду:
$ dotnet run
Архив успешно создан!
Как видно из примера выше, создать в C# архив из файлов папки очень просто.
-
- Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.