Как конвертировать ZIP в 7ZIP с помощью C#

Сначала вам необходимо получить библиотеку Aspose.Zip и использовать ее в своем проекте C#. Обычно его можно загрузить с веб-сайта Aspose или использовать пакет NuGet, если он доступен. Менеджер пакетов, найдите Aspose.ZIP и установите. Вы также можете использовать следующую команду из консоли диспетчера пакетов.

Управляйте пакетами NuGet с помощью пакета Visual Studio.

Консольная команда диспетчера пакетов:

PM> Install-Package Aspose.Zip

Действия по преобразованию ZIP в 7ZIP через C#

Convertation from ZIP to 7ZIP consist of following steps:

  • Extract archive to intermediate storage
  • Compress extracted data to desired format

Системные Требования

Before running the conversion example code, make sure that you have the following prerequisites.

  • Microsoft Windows or a compatible OS with .NET Framework, Mono and COM Interop.
  • Development environment like Microsoft Visual Studio.
  • Aspose.Tasks for .NET DLL referenced in your project.

Пример кода для преобразования из ZIP в 7ZIP

Преобразование ZIP-файлов в формат 7ZIP с использованием C# — это хорошо структурированный процесс, в котором используются возможности библиотеки Aspose.Zip. Чтобы начать это преобразование, вы должны сначала получить библиотеку Aspose.Zip и использовать ее в своем проекте C#. Эту библиотеку можно легко получить, загрузив ее с веб-сайта Aspose или удобно установив через менеджер пакетов NuGet в Visual Studio. Крайне важно убедиться, что ваша среда разработки, включая Visual Studio, правильно настроена и соответствует системным требованиям, например, наличие поддержки .NET Framework и COM Interop.

Само преобразование включает в себя два важных процесса. стадии: экстракция и сжатие. На начальном этапе библиотека Aspose.Zip используется для извлечения содержимого ZIP-файла, эффективно распаковывая ZIP-архив для доступа к исходным файлам и каталогам. После успешного извлечения функциональные возможности библиотеки используются для сжатия извлеченных данных в желаемый формат 7ZIP. Этот процесс гарантирует, что файлы и каталоги будут упакованы с сохранением их иерархической структуры и связанных метаданных. В конечном итоге вы сохраняете результат в виде архива 7ZIP, который содержит то же содержимое, что и исходный ZIP-файл. Это преобразование предоставляет вам эффективный архив 7ZIP, подходящий для упрощенного хранения, передачи и совместимости с различными приложениями и платформами.

Код из ZIP в различные форматы. ZIP-архив обычно содержит несколько записей или файлов. Чтобы преобразовать этот архив в такие форматы, как GZ (Gzip), LZ (Lzip), Z (Unix Compress), XZ (XZ Utils) и BZ2 (Bzip2), общий подход состоит в том, чтобы сначала упаковать содержимое в TAR (Tape). Архивный) формат. Этот процесс напоминает типичную практику в средах Linux.

В этом процессе преобразования каждый файл или запись в ZIP-архиве сначала объединяется в один архив TAR. Этот архив TAR служит контейнером для отдельных файлов, сохраняя их исходную структуру и метаданные. Как только данные инкапсулируются в архив TAR, становится проще применять различные алгоритмы и форматы сжатия.

Выбор TAR в качестве промежуточного формата обусловлен его простотой и широкой совместимостью с различными Unix-подобными операционными системами. Он обеспечивает простой способ группировки файлов без непосредственного применения сжатия. После завершения упаковки TAR к архиву TAR можно применить последующие операции сжатия для создания желаемых выходных форматов, таких как GZ, LZ, Z, XZ или BZ2.

Преобразование из ZIP в 7ZIP — C#:

    using (SevenZipArchive sevenZipArchive =  new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(1048576))))
    {
        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 в 7ZIP

Ознакомьтесь с нашими интерактивными демонстрациями преобразования ZIP в 7ZIP со следующими преимуществами:


Надежная библиотека Aspose.ZIP, которая может сжимать, извлекать, шифровать, дешифровать, конвертировать и объединять архивы. Aspose.ZIP для .NET API позволяет манипулировать различными типами архивов, не вдаваясь в суть сложности форматов сжатия файлов с минимальными усилиями по кодированию.

Другие поддерживаемые преобразования ZIP

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