Создать архив для хранения файлов.
Упрощение управления файлами с помощью инструментов архивирования .NET
Обзор
Как заархивировать несколько файлов
По умолчанию используется алгоритм Deflate.
Zip compression with Deflate algoritm
using (Archive archive = new Archive())
{
archive.CreateEntry("first.bin", "data1.bin");
archive.CreateEntry("second.bin", "data2.bin");
// Add as many entries as you need
archive.Save("archive.zip");
}
Как создать 7-ZIP-архивы из нескольких файлов
По умолчанию для 7-zip используется алгоритм LZMA.
7-Zip with LZMA algorithm
using (SevenZipArchive archive = new SevenZipArchive())
{
archive.CreateEntry("first.bin", "data1.bin");
archive.CreateEntry("second.bin", "data2.bin");
// Add as many entries as you need
archive.Save("archive.7z");
}
XAR-архив с несколькими файлами
По умолчанию используется алгоритм ZLib.
XAR with ZLib algorithm
using (XarArchive archive = new XarArchive())
{
archive.CreateEntry("first.bin", "data1.bin");
archive.CreateEntry("second.bin", "data2.bin");
// Add as many entries as you need
archive.Save("archive.xar");
}
Хранение нескольких файлов без сжатия
Подход для форматов TAR и CPIO аналогичен и заключается в уже известном методе CreateEntry .
TAR-архив без сжатия
TAR storing files without compression
using (TarArchive archive = new TarArchive())
{
archive.CreateEntry("first.bin", "data1.bin");
archive.CreateEntry("second.bin", "data2.bin");
// Add as many entries as you need
archive.Save("archive.tar");
}
CPIO архив без сжатия
CPIO storing files without compression
using (TarArchive archive = new TarArchive())
{
archive.CreateEntry("first.bin", "data1.bin");
archive.CreateEntry("second.bin", "data2.bin");
// Add as many entries as you need
archive.Save("archive.cpio");
}
Форматы только для сжатия без записей
Такие архивы, как GZIP, LZ, BZIP2, XZ, Z, не поддерживают записи и могут сжимать только один источник. Посмотрите примеры с таким сжатием.
Архив GZ Форматы только сжатия без записей
GZIP with compress only single source
using (FileStream source = File.Open("alice29.txt", FileMode.Open, FileAccess.Read))
{
using (GzipArchive archive = new GzipArchive())
{
archive.SetSource(source);
archive.Save("archive.gz");
}
}
Архив LZ Форматы только сжатия без записей
LZIP with compress only single source
using (FileStream source = File.Open("alice29.txt", FileMode.Open, FileAccess.Read))
{
using (GzipArchive archive = new GzipArchive())
{
archive.SetSource(source);
archive.Save("archive.gz");
}
}
Aspose.ZIP позволяет комбинировать форматы только для архивирования и только для сжатия одним методом. Вот пример этой функциональности с комбинацией TAR.GZ. Для этого мы используем метод SaveGzipped.
Комбинация ТАР.ГЗ
Существуют аналогичные методы для форматов сжатия LZIP, XZ, ZStandard, Z.
TAR.GZ with SaveGzipped method
using (TarArchive archive = new TarArchive())
{
archive.CreateEntry("first.bin", "data1.bin");
archive.CreateEntry("second.bin", "data2.bin");
archive.SaveGzipped("archive.tar.gz");
}
ТАР.BZ2
Однако нам нужно использовать другой подход для формата BZIP2.
BZIP2 with SaveGzipped method
using (TarArchive tar = new TarArchive())
{
tar.CreateEntry("first.bin", "data1.bin");
tar.CreateEntry("second.bin", "data2.bin");
using (Bzip2Archive archive = new Bzip2Archive())
{
archive.SetSource(tar);
archive.Save("archive.tar.bz2");
}
}
Другие поддерживаемые функции Aspose.ZIP для .NET API
Используйте библиотеку Aspose.ZIP C# для преобразования, объединения, редактирования документов в виде zip-файлов, извлечения данных из архивов и многого другого!
Support and Learning Resources
- Learning Resources
- Documentation
- Source Code
- API References
- Tutorial Videos
- Product Support
- Free Support
- Paid Support
- Blog
- Release Notes
- Why Aspose.ZIP for .NET?
- Customers List
- Success Stories