在 Python 中將 RAR 檔案轉換為 ZIP 檔案

文件壓縮是資料管理的一個基本方面,因為它有助於減小檔案和資料夾的大小,從而更輕鬆地儲存和共享它們。雖然有多種可用的壓縮格式,但 RARZIP 是最常用的兩種。在多種情況下,您可能會發現自己需要在 Python 中將 RAR 檔案轉換為 ZIP 格式。因此,在這篇文章中,我們將引導您透過幾個簡單的步驟在 Python 應用程式中完成將 RAR 檔案轉換為 ZIP 檔案的過程。

將 RAR 轉換為 ZIP 的 Python 庫

Aspose.ZIP for Python 是一個功能強大且多功能的函式庫,可讓開發人員使用 Python 使用各種壓縮格式,包括 ZIP、RAR、7z 等。它提供了一個用戶友好的 API,可以簡化檔案壓縮和解壓縮任務,使其成為在 Python 應用程式中處理檔案的絕佳選擇。我們將使用該庫進行 RAR 到 ZIP 的轉換。

您可以下載該程式庫或從PyPI安裝它。

> pip install aspose-zip

在 Python 中將 RAR 檔案轉換為 ZIP

使用 Aspose.ZIP for Python 將 RAR 轉換為 ZIP 並不是一項複雜的任務。只需開啟 RAR 文件,存取 RAR 中的每個條目並將其新增至 ZIP 檔案中,最後將 ZIP 檔案儲存到您所需的位置。讓我們更詳細地了解 RAR 到 ZIP 的轉換步驟。

  1. 首先,為 ZIP 檔案建立 Archive 類別的實例。
  2. 然後,使用 RarArchive 類別載入 RAR 存檔。
  3. 之後,使用 RarArchive.entries 集合循環遍歷 RAR 存檔的條目。
  4. 對於 RAR 中的每個條目,執行下列步驟:
    • 使用 RarArchive.entries[index].extract() 方法將條目提取到 BytesIO 物件。
    • 使用 Archive.createentry(string, BytesIO) 方法將提取的條目加入 ZIP 檔案中。
  5. 最後,使用 Archive.save(string) 方法儲存 ZIP 檔案。

以下程式碼範例示範如何在 Python 中將 RAR 檔案轉換為 ZIP。

import aspose.zip as az
from io import BytesIO

# 建立 ZIP 存檔
with az.Archive() as zip:
    # 載入 RAR 文件
    with az.rar.RarArchive("archive.rar") as rar:
        # 循環遍歷條目
       for i in range(rar.entries.length):
            # 將條目從 RAR 複製到 ZIP
            if not rar.entries[i].is_directory:
                ms = BytesIO()
                rar.entries[i].extract(ms)
                zip.create_entry(rar.entries[i].name, ms)
            else:
                zip.create_entry(rar.entries[i].name + "/", None)
    # 儲存 ZIP 存檔
    zip.save("rar_to_zip.zip")

Python ZIP 庫 - 取得免費許可證

您可以透過取得免費的臨時許可證,在 Python 中將 RAR 轉換為 ZIP,而不受評估限制。

學習資源

使用以下資源了解有關 Python ZIP 庫的更多資訊:

線上歸檔工具

您還可以獲得我們免費的處理檔案的線上工具。這些工具由 Aspose.ZIP for Python 提供支援。

結論

Aspose.ZIP for Python 簡化了在 Python 中將 RAR 檔案轉換為 ZIP 格式的過程,使其成為需要使用不同壓縮格式的開發人員的寶貴工具。在這篇文章中,我們介紹了執行 RAR 到 ZIP 轉換所需的基本步驟。透過執行以下步驟,您可以在 Python 應用程式中將 RAR 檔案無縫轉換為 ZIP,並簡化檔案管理任務。

也可以看看