Как преобразовать CAB в CPIO с помощью C#

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

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

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

PM> Install-Package Aspose.Zip

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

Convertation from CAB to CPIO 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.

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

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

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

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

Преобразование из CAB в CPIO — C#:

    using (CpioArchive tarArchive = new CpioArchive())
    {
        using (CabArchive cabArchive = new CabArchive("archive.cab"))
        {
            for (int i = 0; i < cabArchive.Entries.Count; i++)
            {
                var ms = new MemoryStream();
                cabArchive.Entries[i].Extract(ms);
                ms.Seek(0, SeekOrigin.Begin);
                tarArchive.CreateEntry(cabArchive.Entries[i].Name, ms);
            }
        }

        tarArchive.Save("output.cpio");
    }



Бесплатное приложение для преобразования CAB в CPIO

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


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

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

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