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

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

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

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

PM> Install-Package Aspose.Zip

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

Convertation from CAB to TAR.BZ2 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 в TAR.BZ2

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

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

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

По сути, этот комплексный процесс гарантирует, что данные, первоначально находившиеся в архиве CAB, могут быть эффективно преобразованы в различные форматы, обеспечивая гибкость и совместимость для различных вариантов использования.

Преобразование из CAB в TAR.BZ2 — C#:

    using (TarArchive tarArchive = new TarArchive())
    {
        using (Bzip2Archive bzip2Archive = new Bzip2Archive())
        {
            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.Replace('\\', '/'), ms);
                }
            }

            bzip2Archive.SetSource(tarArchive);
            bzip2Archive.Save("output.tar.bz2");
        }
    }



Бесплатное приложение для конвертации CAB в TAR.BZ2

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


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

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

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