รวม TAR กับ ZIP ใน Python

ใช้เทคนิคการบีบอัดข้อมูลต่างๆ เพื่อลดขนาดไฟล์และโฟลเดอร์สำหรับการจัดเก็บหรือการส่งผ่าน รูปแบบการบีบอัดที่ใช้กันทั่วไปสองรูปแบบคือ TAR และ ZIP ซึ่งแต่ละรูปแบบมีจุดแข็งและกรณีการใช้งานของตัวเอง แต่ถ้าคุณต้องการรวมรูปแบบเหล่านี้เข้าด้วยกันล่ะ? ในบล็อกโพสต์นี้ เราจะสำรวจวิธีการผสาน TAR กับ ZIP ใน Python

Python Library เพื่อรวม TAR กับ ZIP

Aspose.ZIP for Python เป็นไลบรารีที่มีฟีเจอร์มากมายที่ช่วยให้คุณทำงานกับรูปแบบไฟล์เก็บถาวรที่หลากหลาย รวมถึง ZIP และ TAR คุณสามารถใช้ไลบรารีเพื่อสร้าง เพิ่ม แตกไฟล์ และจัดการไฟล์เก็บถาวรได้อย่างง่ายดาย เราจะใช้ไลบรารีนี้เพื่อรวม TAR เข้ากับไฟล์ ZIP

คุณสามารถ ดาวน์โหลด ไลบรารีหรือติดตั้งจาก PyPI

> pip install aspose-zip

เหตุใดจึงต้องรวม TAR กับ ZIP

ก่อนที่เราจะเจาะลึกรายละเอียดด้านเทคนิค เรามาพูดคุยกันสั้นๆ ว่าทำไมคุณถึงต้องการรวม TAR เข้ากับ ZIP ทั้ง TAR และ ZIP มีข้อดีเฉพาะตัว:

  • TAR: TAR เป็นรูปแบบการเก็บถาวรไฟล์ที่ใช้กันทั่วไปในระบบ Unix และ Linux เหมาะอย่างยิ่งสำหรับการรวมไฟล์และไดเร็กทอรีหลายไฟล์เป็นไฟล์เดียวโดยไม่มีการบีบอัด ไฟล์เก็บถาวร TAR มักใช้สำหรับการสำรองข้อมูลและไฟล์บรรจุภัณฑ์เพื่อการแจกจ่าย

  • ZIP: ZIP เป็นรูปแบบการบีบอัดที่ใช้กันอย่างแพร่หลายซึ่งไม่เพียงรวมไฟล์และไดเร็กทอรีเข้าด้วยกัน แต่ยังบีบอัดไฟล์เหล่านี้เพื่อลดพื้นที่จัดเก็บข้อมูลและเพิ่มความเร็วในการถ่ายโอนไฟล์ ZIP ได้รับการสนับสนุนบนหลายแพลตฟอร์มและเข้ากันได้กับเครื่องมือเก็บถาวรต่างๆ

การรวม TAR กับ ZIP จะเป็นประโยชน์ในสถานการณ์ที่คุณต้องการรักษาโครงสร้างไดเรกทอรีของไฟล์ TAR ในขณะที่ได้รับประโยชน์จากการบีบอัดของ ZIP

รวม TAR กับ ZIP ใน Python

ต่อไปนี้เป็นขั้นตอนในการรวม TAR กับ ZIP ใน Python

  • ขั้นแรก ให้โหลด TAR โดยใช้คลาส TarArchive
  • จากนั้นโหลด ZIP โดยใช้คลาส Archive
  • หลังจากนั้น ให้วนซ้ำรายการต่างๆ ของ TAR โดยใช้คอลเลกชัน Archive.entries
  • แยกแต่ละรายการจาก TAR ลงในอ็อบเจ็กต์ BytesIO โดยใช้เมธอด Archive.entries[index].extract(BytesIO)
  • เพิ่มรายการที่แยกออกมาแล้วลงในไฟล์ ZIP โดยใช้วิธี Archive.createentry(string, BytesIO)
  • สุดท้าย ให้บันทึกไฟล์ ZIP โดยใช้วิธี Archive.save(string)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการผสาน TAR กับไฟล์ ZIP ใน Python

import aspose.zip as az
from io import BytesIO

# โหลดไฟล์ TAR
with az.tar.TarArchive("source.tar") as source:
  
    # โหลดไฟล์ ZIP
    with az.Archive("target.zip") as target:
      
        # วนซ้ำรายการ TAR และเพิ่มลงใน ZIP
       for i in range(source.entries.length):
            if not source.entries[i].is_directory:
                ms = BytesIO()
                source.entries[i].extract(ms)
                target.create_entry(source.entries[i].name, ms)
            else:
                target.create_entry(source.entries[i].name + "/", None)
        
        # บันทึกไฟล์ ZIP
        target.save("merged_tar_zip.zip")

Python ZIP Library - รับสิทธิ์ใช้งานฟรี

รับ [ใบอนุญาตชั่วคราวฟรี] และทำงานกับรูปแบบไฟล์เก็บถาวรหลายรูปแบบโดยไม่มีข้อจำกัดในการประเมิน

ทรัพยากรการเรียนรู้

เรียนรู้เพิ่มเติมเกี่ยวกับไลบรารี Python ZIP ของเราโดยใช้ทรัพยากรที่ระบุด้านล่าง:

เครื่องมือ ZIP ออนไลน์

ใช้ [เครื่องมือออนไลน์เพื่อทำงานกับไฟล์เก็บถาวร] ฟรีของเรา13 ซึ่งขับเคลื่อนโดย Aspose.ZIP for Python

บทสรุป

การรวม TAR กับ ZIP โดยใช้ Aspose.ZIP for Python เป็นกระบวนการที่ไม่ซับซ้อนซึ่งช่วยให้คุณควบคุมจุดแข็งของรูปแบบการเก็บถาวรทั้งสองรูปแบบได้ ไม่ว่าคุณจะต้องจัดแพ็คเกจไฟล์เพื่อแจกจ่าย สร้างการสำรองข้อมูล หรือเพียงลดพื้นที่จัดเก็บข้อมูล Aspose.ZIP จะทำให้งานง่ายขึ้นและช่วยให้คุณควบคุมกระบวนการได้อย่างละเอียด คุณสามารถปฏิบัติตามคำแนะนำที่ให้ไว้ในบล็อกโพสต์นี้ได้อย่างง่ายดาย และรวม TAR เข้ากับไฟล์ ZIP ในแอปพลิเคชัน Python ของคุณ

ดูสิ่งนี้ด้วย