เมื่อทำงานกับไฟล์ ZIP คุณอาจพบว่าไฟล์ ZIP หลายไฟล์ถูกซ้อนอยู่ภายในไฟล์ ZIP แม่ เพื่อเข้าถึงเนื้อหาของไฟล์ที่ซ้อนกันเหล่านี้ คุณต้องแยกไฟล์ ZIP แม่ออกมาก่อนแล้วจึงจัดการกับแต่ละไฟล์ที่ซ้อนกันโดยเฉพาะ ในบทความนี้เราจะแนะนำคุณเกี่ยวกับ วิธีการแยกไฟล์ ZIP ที่ซ้อนกันใน C# .NET อย่างมีประสิทธิภาพและไม่ซับซ้อน

สารบัญ

การใช้ API ของ .NET สำหรับการแยกไฟล์ ZIP ที่ซ้อนกัน

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

PM> Install-Package Aspose.Zip

คู่มือทีละขั้นตอนในการแยกไฟล์ ZIP ที่ซ้อนกัน

สำหรับการสาธิตของเรา เราได้เตรียมไฟล์ ZIP ที่มีรายการสามรายการ รวมถึงไฟล์ ZIP ที่ซ้อนกัน

ไฟล์ ZIP ที่ซ้อนกัน

ไฟล์ ZIP ที่ซ้อนกัน

เราจะทำการแยกไฟล์ ZIP ที่ซ้อนกันแต่ละไฟล์และบันทึกเนื้อหาของมันลงในโฟลเดอร์แยกต่างหาก นี่คือขั้นตอนในการดำเนินการจัดการไฟล์ ZIP ที่ซ้อนกันใน .NET:

  1. สร้าง FileStream: โหลดไฟล์ ZIP แม่โดยใช้วัตถุ FileStream
  2. โหลดไฟล์ ZIP: ใช้คลาส Archive เพื่อโหลดไฟล์ ZIP
  3. วนรอบผ่านรายการใน Archive: วนรอบแต่ละ ArchiveEntry ใน Archive.Entries collection
  4. กรองไฟล์ ZIP ที่ซ้อนกัน: ระบุไฟล์ ZIP ใน collection และสำหรับแต่ละไฟล์เหล่านี้ ให้ทำตามขั้นตอนดังต่อไปนี้:
    • สร้าง MemoryStream: สร้าง MemoryStream และคัดลอกรายการ archive ลงในมันโดยใช้วิธี ArchiveEntry.Open().CopyTo(Stream)
    • โหลด Archive ที่ซ้อนกัน: สร้างตัวอย่างของคลาส Archive เพื่อโหลด archive ที่ซ้อนกันจาก MemoryStream
    • แยกไปยังไดเรกทอรี: สุดท้าย แยกเนื้อหาของ archive ที่ซ้อนกันไปยังโฟลเดอร์ที่กำหนดโดยใช้วิธี Archive.ExtractToDirectory(string)

นี่คือตัวอย่างโค้ดที่แสดงวิธีการแยกไฟล์ ZIP ที่ซ้อนกันใน C# .NET:

ภาพหน้าจอต่อไปนี้แสดงเนื้อหาที่ถูกแยกออกจากไฟล์ ZIP ที่ซ้อนกัน:

การแยกไฟล์ ZIP ที่ซ้อนกันใน C# .NET

ไฟล์ที่ถูกแยกออกจาก ZIP ที่ซ้อนกัน

รับใบอนุญาต API ฟรี

คุณสามารถขอ ใบอนุญาตชั่วคราวฟรี สำหรับ Aspose.ZIP สำหรับ .NET ซึ่งช่วยให้คุณใช้ไลบรารีนี้ได้โดยไม่มีข้อจำกัดในการประเมินผล

สรุป

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

ดูเพิ่มเติม