在 C# 中将 RAR 文件转换为 ZIP 存档

RAR 是一种常用的存档文件格式,支持数据的无损压缩。通常,人们更喜欢 RAR 而不是 ZIP,因为它提供了更好的压缩率并保持存档大小更小。但是,在某些情况下,您可能需要将 RAR 文件转换为 ZIP 档案。为此,本文介绍了如何在 C# 中以编程方式将 RAR 文件转换为 ZIP。

用于 RAR 到 ZIP 转换的 C# .NET API

Aspose.ZIP for .NET 是一个强大的归档 API,支持创建和操作流行的归档格式。我们将利用此 API 将 RAR 文件转换为 ZIP 格式。要使用 API,您可以从 NuGet 安装它或从 下载部分 下载其 DLL。

PM> Install-Package Aspose.Zip

在 C# 中将 RAR 文件转换为 ZIP

使用 Aspose.ZIP for .NET,RAR 文件可以在几个步骤内转换为 ZIP 格式。以下是将 RAR 文件转换为 C# 中的 ZIP 存档的步骤。

以下代码示例展示了如何在 C# 中将 RAR 文件转换为 ZIP 格式。

// 为 ZIP 存档创建存档类的实例
using (Archive zip = new Archive())
{
    // 加载 RAR 存档
    using (RarArchive rar = new RarArchive(@"D:\archvie.rar"))
    {
        // 循环遍历 RAR 文件的条目
       for (int i = 0; i < rar.Entries.Count; i++)
        {
             // 将每个条目从 RAR 复制到 ZIP
             if (!rar.Entries[i].IsDirectory)
             {
                 var ms = new MemoryStream();
                 rar.Entries[i].Extract(ms);
                 ms.Seek(0, SeekOrigin.Begin);
                 zip.CreateEntry(rar.Entries[i].Name, ms);
             }
             else
                 zip.CreateEntry(rar.Entries[i].Name + "/", Stream.Null);
         }
     }
    // 保存生成的 ZIP 存档
    zip.Save("output.zip");
}

获取免费 API 许可证

您可以获得 免费的临时许可证 以使用 Aspose.ZIP for .NET,而不受评估限制。

结论

在本文中,您学习了如何在 C# 中以编程方式将 RAR 存档转换为 ZIP 格式。分步指南和代码示例演示了通过几个步骤将 RAR 文件转换为 ZIP 存档。您可以阅读 Aspose.ZIP for .NET 的 文档 以探索其他功能。此外,您可以通过我们的 论坛 与我们分享您的疑问。

也可以看看