
Aspose.ZIP for .NET
C# .NET API для сжатия и распаковки файлов ZIP, RAR
.NET API сжатия позволяет разработчикам программного обеспечения сжимать и распаковывать файлы, папки, каталоги и защищать ZIP-архивы паролем в приложениях C#.
Что такое Aspose.ZIP для .NET?
Aspose.ZIP для .NET — это надёжный API для сжатия документов и управления архивами, разработанный, чтобы помочь разработчикам эффективно сжимать и распаковывать файлы и папки с минимальными усилиями по программированию. Эта универсальная библиотека упрощает процесс создания, извлечения, изменения и управления архивами в широком спектре форматов, включая ZIP, 7Zip, RAR, TAR, GZIP, BZ2, LZ, CPIO, XZ, Z и CAB. Она предоставляет обширный набор функций для управления файловыми структурами, позволяя пользователям сжимать каталоги, вставлять или удалять записи в существующих архивах и сохранять файлы без сжатия, при этом бесшовно интегрируясь в веб‑приложения ASP.NET или Windows Forms на различных операционных системах.
Чтобы обеспечить безопасность данных, библиотека превосходно создает зашифрованные архивы, поддерживая отраслевые стандарты алгоритмов, такие как AES 128, AES 192 и AES 256. Это делает её идеальным решением для безопасного хранения и передачи конфиденциальных данных, позволяя разработчикам защищать паролем отдельные записи или применять шифрование ко всему архиву 7z. Кроме того, Aspose.ZIP for .NET оптимизирована для высокой производительности с поддержкой потоков, что позволяет обрабатывать большие архивы без загрузки всего файла в память. Предоставляя детальный контроль над процессом шифрования и дешифрования, этот API предлагает высокоэффективный и безопасный набор инструментов для современной разработки приложений.
Начало работы с Aspose.ZIP для .NET
Рекомендуемый способ установки Aspose.ZIP for .NET — использовать NuGet. Пожалуйста, используйте следующую команду для беспроблемной установки.
Установите Aspose.ZIP с помощью команды NuGet
NuGet\Install-Package Aspose.Zip Вы можете скачать библиотеку напрямую со страницы продукта Aspose.ZIP.
Сжатие и извлечение архива через .NET API
Aspose.ZIP for .NET предоставляет разработчикам программного обеспечения возможность сжимать или извлекать архивы в их собственных .NET приложениях. Библиотека поддерживает некоторые распространённые форматы архивов, такие как ZIP, RAR, 7Zip, GZIP, BZ2, а также многочисленные форматы Linux, такие как CPIO, TAR, Lzip, Bzip2, XZ и Z. Библиотека также поддерживает несколько базовых и продвинутых функций, таких как ZIP-файлы с паролем, извлечение конкретного файла из архива, распаковка защищённого паролем ZIP, применение шифрования и дешифрования и т.д.
Как сжать несколько файлов с помощью C#?
using (FileStream zipFile = File.Open(dataDir + "CompressMultipleFiles_out.zip", FileMode.Create))
{
using (FileStream source1 = File.Open(dataDir + "alice29.txt", FileMode.Open, FileAccess.Read))
{
using (FileStream source2 = File.Open(dataDir + "asyoulik.txt", FileMode.Open, FileAccess.Read))
{
using (var archive = new Archive())
{
archive.CreateEntry("alice29.txt", source1);
archive.CreateEntry("asyoulik.txt", source2);
archive.Save(zipFile, new ArchiveSaveOptions() { Encoding = Encoding.ASCII, ArchiveComment = "There are two poems from Canterbury corpus" });
}
}
}
}
Создание защищённого паролем архива с помощью C#
Aspose.ZIP для .NET позволяет разработчикам программного обеспечения сжимать и распаковывать файлы или папки с защитой паролем в своих собственных приложениях C# .NET, не беспокоясь о структуре файлов. Библиотека включает несколько важных функций, связанных с защитой архивов и шифрованием, таких как шифрование файлов с помощью AES192, шифрование файлов с помощью AES256, защита каталога паролем, шифрование нескольких файлов с использованием различных методов шифрования, распаковка архивов, зашифрованных AES, распаковка сохранённого архива, зашифрованного AES, распаковка зашифрованной папки в каталог, распаковка архива, содержащего один файл, распаковка архива, содержащего несколько файлов, извлечение сохранённого архива без сжатия.
Как зашифровать один файл традиционными методами шифрования через API C#.NET?
using (FileStream zipFile = File.Open(dataDir + "CompressWithTraditionalEncryption_out.zip", FileMode.Create))
{
using (FileStream source1 = File.Open(dataDir + "alice29.txt", FileMode.Open, FileAccess.Read))
{
var archive = new Archive(new ArchiveEntrySettings(null, new TraditionalEncryptionSettings("p@s$")));
archive.CreateEntry("alice29.txt", source1);
archive.Save(zipFile);
}
}
Создание самораспаковывающегося (SFX) архива с помощью C#
Аспозе.ZIP для .NET предоставил разработчикам программного обеспечения возможность создавать и управлять самораспаковывающимся (SFX) архивом в их собственных приложениях .NET. Самораспаковывающийся (SFX) архив — это исполняемый файл с встроенным архивом, который может автоматически распаковываться после запуска. Библиотека включает несколько важных функций для работы с самораспаковывающимся архивом, таких как создание экземпляра самораспаковывающегося архива, установка пароля, запуск самораспаковывающегося архива (требуется .NET Framework 2.0 или выше) и т.д. Библиотека также предоставляет некоторые параметры командной строки для самораспаковывающегося архива.
Как создать самораспаковывающийся архив через API C#?
using (FileStream zipFile = File.Open("archive.exe", FileMode.Create))
{
using (var archive = new Archive())
{
archive.CreateEntry("entry.bin", "data.bin");
var sfxOptions = new SelfExtractorOptions()
{
ExtractorTitle = "Extractor",
CloseWindowOnExtraction = true,
TitleIcon = "C:\pictorgam.ico"
};
archive.Save(zipFile, new ArchiveSaveOptions() { SelfExtractorOptions = sfxOptions });
}
}
Конвертация ZIP-архива в tar.gz, tar.lz, tar.xz и другие форматы через .NET API
Аспозе.ZIP для .NET позволяет разработчикам программного обеспечения легко конвертировать ZIP-архив в многие другие форматы файлов, такие как tar.gz, tar.lz, tar.xz и т.д. Файл tar.gz представляет собой комбинацию файлов .tar и .gz. Он считается одним из самых распространённых форматов сжатых архивов в мире Linux, тогда как ZIP является самым популярным для Windows. Аспозе.ZIP для .NET полностью поддерживает извлечение элементов из ZIP-архива и их непосредственное размещение в tar.gz архиве всего несколькими строками кода. Приведённый ниже пример показывает, как этого достичь.
Как извлечь записи из ZIP-архива через .NET API?
using (Archive source = new Archive("source.zip"))
{
using (TarArchive tar = new TarArchive())
{
foreach (ArchiveEntry entry in source.Entries)
{
if (!entry.IsDirectory)
{
MemoryStream mem = new MemoryStream();
entry.Open().CopyTo(mem);
tar.CreateEntry(entry.Name, mem);
}
}
tar.SaveGzipped("result.tar.gz");
}
}
