Интеграция API сжатия в приложение .NET

Интеграция библиотеки сжатия проста, и большинство операций сжатия и распаковки можно выполнить всего за несколько строк кода.

Сжатие одного файла - C#

  var dir = "Path/To/Directory/";
  using (var arch = new Archive())
  {
      arch.CreateEntry("filename.dat", dir + "file.dat");
      arch.Save(dir + "result.zip");
  }

Этот код создает ZIP-архив с именем "result.zip" и добавляет в него один файл. Вот описание его работы:

  • Путь к каталогу : Определяет переменную dir и присваивает ей строку, содержащую полный путь к каталогу, где находятся файлы.
  • Создание архива : Код использует конструкцию using, которая обеспечивает правильное управление ресурсами, автоматически освобождая объект архива (arch) после выполнения кода в блоке.
  • Добавление файла в архив : Внутри блока using код создает запись в архиве с именем "filename.dat". Метод CreateEntry принимает два аргумента:
    - Первый аргумент задает имя записи в архиве, "filename.dat".
    - Второй аргумент указывает путь к файлу, который будет добавлен ("dir + file.dat"). Этот путь объединяет путь каталога, хранящийся в dir, с именем файла "file.dat".
    Поскольку метод сжатия не был указан, файл будет сжат с использованием стандартного алгоритма Deflate.
  • Сохранение архива : Наконец, код вызывает метод Save для объекта архива (arch). Это создает новый ZIP-архив с добавленным файлом с именем "result.zip" в том же каталоге, который указан в dir.

  
 

Aspose.ZIP для .NET — это гибкое API для сжатия документов и работы с архивами в стандартном формате ZIP. API позволяет приложениям .NET выполнять сжатие/распаковку файлов, архивировать файлы и папки, а также шифровать архивы. Это API поддерживает все известные форматы архивов: ZIP, RAR, 7Zip, GZIP, BZ2, а также многие форматы архивов Linux: CPIO, TAR, Lzip, Bzip2, XZ, Z. Предоставляет защиту с использованием паролей, определяемых пользователем, и традиционного шифрования с помощью ZipCrypto или AES, таких как AES128, 192 и AES256.

Aspose.Zip предоставляет API для .NET для сжатия и архивирования файлов. Библиотека позволяет разработчикам сжимать, архивировать и извлекать файлы в рамках .NET, обеспечивая эффективную интеграцию и высокую производительность.
Платформа .NET стала универсальной основой для приложений, начиная с веб-разработки и заканчивая корпоративными решениями. Aspose.Zip предоставляет инструменты для выполнения задач сжатия файлов, поддерживая эффективную и надежную разработку в рамках платформы .NET.

Расширенные возможности сжатия и архивирования в .NET Функции API

Создайте архив из одного или нескольких файлов

Добавляйте записи в существующий архив

Сжимайте папки с сохранением их структуры

Распаковывайте в каталог с сохранением структуры архива

Как извлечь RAR с помощью .NET

С Aspose.Zip для .NET вы можете легко работать с архивами RAR, включая извлечение их содержимого в каталог. Этот процесс включает инициализацию класса RarArchive, загрузку файла RAR и извлечение его записей в целевой каталог.

Aspose.Zip для .NET предоставляет высокопроизводительный и надежный интерфейс для работы с различными форматами архивов. Пример ниже демонстрирует, как извлечь архив RAR в указанный каталог.

Извлечение архивов RAR через .NET

using (RarArchive archive = new RarArchive("archive.rar"))
{
    archive.ExtractToDirectory("extracted");
}

Пример кода демонстрирует извлечение архива RAR с помощью Aspose.Zip API для .NET. Скрипт извлекает все записи из архива RAR в указанный каталог, обеспечивая высокую производительность и гибкость.

Как конвертировать Zip с использованием C#

С помощью .NET вы можете использовать сторонние библиотеки, такие как SevenZipArchive, для преобразования архивов ZIP в формат 7Z. Этот процесс включает извлечение данных из архива ZIP и создание соответствующих записей в новом архиве 7Z.

SevenZipArchive предоставляет простой и гибкий интерфейс для работы с форматами архивов, включая поддержку сжатия и структурированных данных. Пример ниже демонстрирует, как преобразовать архив ZIP, извлекая его записи в память и добавляя их в архив 7Z.

Конвертация из ZIP в 7Z через .NET

  using (SevenZipArchive sevenZipArchive =  new SevenZipArchive())
  {
    using (Archive archive = new Archive("source.zip"))
    {
      for (int i = 0; i < archive.Entries.Count; i++)
      {
        var ms = new MemoryStream();
        archive.Entries[i].Extract(ms);
        ms.Seek(0, SeekOrigin.Begin);
        sevenZipArchive.CreateEntry(archive.Entries[i].Name.Replace('\\', '/'), ms);
      }
    }

    sevenZipArchive.Save("output.7z");
  }

Пример кода демонстрирует конвертацию архива ZIP в формат 7Z с использованием C#. Используя класс SevenZipArchive, скрипт извлекает записи ZIP и создает соответствующие записи в архиве 7Z.

Другие поддерживаемые функции Aspose.ZIP для .NET API

Используйте библиотеку Aspose.ZIP C# для преобразования, объединения, редактирования документов в виде zip-файлов, извлечения данных из архивов и многого другого!

  

Support and Learning Resources

  
  

Aspose.Zip offers individual archive processing APIs for other popular development environments, listed below: