如何使用 C# 将 CAB 转换为 TAR.GZ

首先,您需要在 C# 项目中获取并引用 Aspose.Zip 库。您通常可以从 Aspose 网站下载它或使用 NuGet 包(如果有)。 包管理器,搜索 Aspose.ZIP 并安装。您还可以从包管理器控制台使用以下命令。

使用 Visual Studio 包管理 NuGet 包

包管理器控制台命令:

PM> Install-Package Aspose.Zip

通过 C# 将 CAB 转换为 TAR.GZ 的步骤

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

从 CAB 转换为 TAR.GZ 的示例代码

将 CAB 存档转换为各种格式的过程需要有条不紊且精确的方法。通常,CAB 档案包含大量文件或记录,每个文件或记录都包含有价值的数据。为了促进向 GZ (Gzip)、LZ (Lzip)、Z (Unix Compress)、XZ (XZ Utils) 和 BZ2 (Bzip2) 等格式的转换,通常采用的策略需要将这些内容最初合并到 TAR 中。 GZ(带 Gzip 压缩的磁带存档)格式。

此方法反映了 Linux 环境中的成熟实践,其中 TAR.GZ 存档充当适应性容器。在转换过程中,CAB 存档中的每个单独文件或记录都被精心安排在统一的 TAR.GZ 存档中。这个 TAR.GZ 存档充当一个有凝聚力的存储库,孜孜不倦地保留原始文件结构和相关元数据。这种对 TAR.GZ 格式的封装简化了各种压缩算法和格式的后续应用。

TAR.GZ 作为中间格式的偏好是基于其固有的简单性和跨各种类 Unix 操作的出色兼容性系统。它无需立即应用压缩即可将文件分组在一起的能力使其成为一个务实的选择。成功打包成 TAR.GZ 后,可以应用后续压缩操作来生成所需的输出格式,包括 GZ、LZ、Z、XZ 或 BZ2。

本质上,这个综合过程确保了将最初存储在 CAB 存档中的数据转换为多种格式,从而提供跨各种用例的适应性和兼容性。

从 CAB 转换为 TAR.GZ - C#:

    using (TarArchive tarArchive = new TarArchive())
    {
        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);
            }
        }

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



将 CAB 转换为 TAR.GZ 的免费应用程序

查看我们的CAB 到 TAR.GZ 转换的现场演示,具有以下优势


一个可靠的Aspose.ZIP库,可以压缩、提取、加密、解密、转换和合并档案。 Aspose.ZIP for .NET API 允许操作各种存档类型,而无需以最少的编码工作进入压缩文件格式的底层复杂性。

其他支持的 CAB 转换

您还可以将 CAB 转换为许多其他文件格式,包括下面列出的几种。