
เมื่อทำงานกับไฟล์ ZIP คุณอาจพบว่าไฟล์ ZIP หลายไฟล์ถูกซ้อนอยู่ภายในไฟล์ ZIP หลัก เพื่อเข้าถึงเนื้อหาของไฟล์ ZIP ที่ซ้อนกันเหล่านี้ คุณต้องทำการแตกไฟล์ ZIP หลักก่อนแล้วจึงจัดการกับไฟล์ ZIP ที่ซ้อนกันแต่ละไฟล์อย่างแยกต่างหาก ในบทความนี้เราจะแนะนำคุณเกี่ยวกับ วิธีการแตกไฟล์ ZIP ที่ซ้อนกันใน C# .NET อย่างมีประสิทธิภาพ โดยไม่ต้องเขียนโค้ดที่ซับซ้อน
สารบัญ
การใช้ .NET API สำหรับการแตกไฟล์ ZIP ที่ซ้อนกัน
ในการทำการแตกไฟล์ ZIP ที่ซ้อนกัน เราจะใช้ไลบรารี Aspose.ZIP for .NET API ที่มีประสิทธิภาพนี้ถูกออกแบบมาเฉพาะสำหรับการดำเนินการจัดเก็บภายในแอปพลิเคชัน .NET ทำให้คุณสามารถสร้างและจัดการกับรูปแบบไฟล์บีบอัดต่างๆ ได้อย่างง่ายดาย คุณสามารถเลือกที่จะ ดาวน์โหลด DLL ของ API หรือทำการติดตั้งโดยตรงด้วย NuGet โดยใช้คำสั่งต่อไปนี้:
PM> Install-Package Aspose.Zip
คู่มือทีละขั้นตอนในการแตกไฟล์ ZIP ที่ซ้อนกัน
สำหรับการสาธิตของเรา เราได้เตรียมไฟล์ ZIP ที่มีสามรายการรวมถึงไฟล์ ZIP ที่ซ้อนกัน

Nested ZIP Archives
เราจะทำการแตกไฟล์ ZIP ที่ซ้อนกันแต่ละไฟล์และบันทึกเนื้อหาของมันลงในโฟลเดอร์แยกต่างหาก นี่คือขั้นตอนในการดำเนินการไฟล์ ZIP ที่ซ้อนกันใน .NET:
- สร้าง FileStream: โหลดไฟล์ ZIP หลักโดยใช้วัตถุ FileStream
- โหลดไฟล์ ZIP: ใช้คลาส Archive เพื่อโหลดไฟล์ ZIP
- วนรอบผ่านรายการใน Archive: วนรอบผ่านแต่ละ ArchiveEntry ในคอลเลกชัน Archive.Entries
- กรองไฟล์ ZIP ที่ซ้อนกัน: ระบุไฟล์ ZIP ในคอลเลกชันและสำหรับไฟล์ ZIP เหล่านี้แต่ละไฟล์ ให้ทำตามขั้นตอนดังต่อไปนี้:
- สร้าง MemoryStream: สร้าง MemoryStream และคัดลอกรายการของไฟล์ ZIP ลงในมันโดยใช้วิธีการ ArchiveEntry.Open().CopyTo(Stream)
- โหลดไฟล์ ZIP ที่ซ้อนกัน: สร้างอินสแตนซ์ของคลาส Archive เพื่อโหลดไฟล์ ZIP ที่ซ้อนกันจาก MemoryStream
- แตกไฟล์ไปยังโฟลเดอร์: สุดท้าย ทำการแตกเนื้อหาของไฟล์ ZIP ที่ซ้อนกันไปยังโฟลเดอร์ที่กำหนดโดยใช้วิธีการ Archive.ExtractToDirectory(string)
นี่คือตัวอย่างโค้ดที่แสดงวิธีการแตกไฟล์ ZIP ที่ซ้อนกันใน C# .NET:
ภาพหน้าจอต่อไปนี้แสดงเนื้อหาที่ถูกแตกออกจากไฟล์ ZIP ที่ซ้อนกัน:

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