Как конвертировать RAR в TAR.GZ с помощью C#

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

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

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

PM> Install-Package Aspose.Zip

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

Convertation from RAR to TARGZ 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.

Пример кода для преобразования из RAR в TAR.GZ

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

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

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

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

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

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

    using (TarArchive tarArchive = new TarArchive())
    {
        using (RarArchive rar = new RarArchive(@"archive.rar"))
        {
            for (int i = 0; i < rar.Entries.Count; i++)
            {                        
                if (!rar.Entries[i].IsDirectory)
                {
                    var ms = new MemoryStream();
                    rar.Entries[i].Extract(ms);
                    ms.Seek(0, SeekOrigin.Begin);
                    tarArchive.CreateEntry(rar.Entries[i].Name, ms);
                }
                else
                    tarArchive.CreateEntry(rar.Entries[i].Name + "/", Stream.Null);
            }
        }

        tarArchive.SaveGzipped("output.tar.gz");
    }



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

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


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

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

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