如何使用 C# 將 RAR 轉換為 TAR.GZ

首先,您需要在 C# 專案中取得並引用 Aspose.Zip 函式庫。您通常可以從 Aspose 網站下載它或使用 NuGet 套件(如果有)。 套件管理器,搜尋 Aspose.ZIP 並安裝。您也可以從套件管理器控制台使用以下命令。

使用 Visual Studio 套件管理 NuGet 套件

套件管理器控制台命令:

PM> Install-Package Aspose.Zip

透過 C# 將 RAR 轉換為 TAR.GZ 的步驟

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 檔案以其強大的壓縮能力和廣泛的使用而聞名。當它們轉換為類別 Unix 系統中常用的 TAR.GZ 檔案時,原始檔案結構和資料在轉換過程中會被仔細保留。這可確保內容保持可存取且完整,使其適合 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 for .NET API 允許操作各種存檔類型,而無需以最少的編碼工作進入壓縮檔案格式的底層複雜性。

其他支援的 RAR 轉換

您也可以將 RAR 轉換為許多其他檔案格式,包括下面列出的幾種。