1. Товары
  2.   Сжатие
  3.   .NET
  4.   SharpCompress 
 
  

.NET API с открытым исходным кодом для форматов файлов сжатия

Библиотека .NET с открытым исходным кодом для работы с популярными форматами файлов сжатия.

Что такое SharpCompress?

SharpCompress — это чистая библиотека .NET с открытым исходным кодом, которая позволяет разработчикам программного обеспечения работать с популярными форматами файлов сжатия, такими как RAR, 7ZAP, ZIP, TAR, GZIP, BZIP2 и другими. Он предоставляет возможность распаковки 7ZIP, ZIP/unzip, TAR/untar LZIP/unlzip, BZIP2/unbzip2 и GZIP/ungzip с API прямого чтения и произвольного доступа к файлам. Он также реализовал поддержку записи для форматов файлов ZIP, TAR, BZIP2 и GZIP.

SharpCompress Несколько важных функций, таких как создание zip-архива из всех файлов в каталоге в файл, извлечение всех файлов из файла RAR в каталог, использование ReaderFactory для автоматического определения типа архива и открытие потока ввода, использование ReaderFactory для автоматического определения типа архива и Откройте входной поток и многое другое

Previous Next

Начало работы с SharpCompress

Чтобы установить SharpCompress, вам потребуется .NET Framework 3.5 или выше. Вы можете вручную загрузить репозиторий с GitHub. Или вы можете использовать NuGet.

Вот команда

 Install-Package sharpcompress -Version number 

Библиотека .NET для сжатия и извлечения файлов из ZIP-файла

SharpCompress позволяет разработчикам .NET создавать ZIP-файл, сжимая содержимое папки в новый файл ZIP. Формат файла ZIP является одним из наиболее широко используемых форматов файлов для сжатия и архивирования. Это помогает уменьшить размер одного или нескольких файлов, а также вы можете архивировать несколько файлов и папок в один файл. API также позволяет разработчикам извлекать файлы из ZIP-файла. Вам просто нужно указать, какой файл вы хотите извлечь, и он будет циклически просматривать каждый файл в архиве, чтобы сохранить его в каталоге.

Извлечь все файлы из RAR — C#

// Read RAR file
RarArchive rarArchive = RarArchive.Open("fileformat.rar");
// Extract all data
foreach (var entry in rarArchive.Entries.Where(entry => !entry.IsDirectory))
{
    entry.WriteToDirectory("\\filformat", new ExtractionOptions()
    {
    ExtractFullPath = true,
    Overwrite = true
    });
}
    

Добавить файл в существующий ZIP-файл с помощью .NET

Библиотека SharpCompress предоставляет пользователям возможность добавлять файлы в существующий ZIP-файл. Во-первых, вам нужно выбрать файл, который вы хотите добавить к существующему ZIP-файлу. SharpCompress сначала сохранит его во временный файл, и как только вы это сделаете, вы сможете переместить временный файл в постоянное место. Таким образом, новый файл сжимается, когда вы добавляете его в существующий ZIP-архив. Вы можете добавить существующий файл в zip-архив, выполнив три простых шага.

Добавить файл в существующий ZIP-файл

  1. Откройте существующий ZIP-файл с помощью метода ZipArchive.Open() и передайте имя файла в качестве параметра.
  2. Добавьте файлы в ZIP с помощью метода AddAllFromDirectory() и передайте путь к каталогу в виде вложений.
  3. Сохраните файл с помощью метода SaveTo() и передайте выходной путь в качестве первого аргумента и CompressionType в качестве второго аргумента.

Добавить файлы в существующий ZIP-архив — C#

// open existing ZIP file
ZipArchive archive = ZipArchive.Open("test.zip");
// add samples files in it
archive.AddAllFromDirectory("\\sample");
// save file
archive.SaveTo("sample.zip", CompressionType.Deflate);
    
 Русский