วิธีการแตกไฟล์ Zip ใน C#

วิธีการแตกไฟล์ Zip ใน C#

ในบทแนะนำนี้ คุณจะได้เรียนรู้วิธีการแตกไฟล์ zip โดยใช้โค้ด C# โดยใช้ไลบรารี Aspose.ZIP คุณสามารถแตกไฟล์ที่มีรูปแบบต่าง ๆ เช่น ZIP, GZip, RAR, TAR, และ 7Zip ได้อย่างง่ายดายในแอปพลิเคชันของคุณ

ประโยชน์ของการแตกไฟล์ ZIP

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

ข้อกำหนดเบื้องต้น: การเตรียมสภาพแวดล้อม

  1. ตั้งค่า Visual Studio หรือ .NET IDE ที่เข้ากันได้
  2. ติดตั้ง Aspose.ZIP จาก NuGet Package Manager

คู่มือทีละขั้นตอนในการแตกไฟล์ Zip ใน C#

ขั้นตอนที่ 1: ติดตั้ง Aspose.ZIP

เริ่มต้นด้วยการเพิ่มไลบรารี Aspose.ZIP ลงในโปรเจกต์ของคุณ

Install-Package Aspose.ZIP

ขั้นตอนที่ 2: รวม Namespace

เพิ่มการอ้างอิงไปยัง Aspose.Zip namespace ในโค้ดของคุณ

using Aspose.Zip;

ขั้นตอนที่ 3: โหลดไฟล์ ZIP

เปิดไฟล์ ZIP โดยใช้วัตถุ FileStream

FileStream zipFileToBeExtracted = File.Open("ZipFileToBeExtracted.zip", FileMode.Open);

ขั้นตอนที่ 4: สร้างวัตถุ Archive

โหลด FileStream ลงในวัตถุ Archive

Archive zipArchiveToExtract = new Archive(zipFileToBeExtracted);

ขั้นตอนที่ 5: นับไฟล์ใน Archive

ดึงจำนวนไฟล์ที่อยู่ใน ZIP archive

int numberOfFilesInArchive = zipArchiveToExtract.Entries.Count;

ขั้นตอนที่ 6: แตกแต่ละรายการ

วนลูปผ่านแต่ละรายการใน archive และแตกไฟล์

for (int fileCounter = 0; fileCounter < numberOfFilesInArchive; fileCounter++)
{
    ArchiveEntry archiveFileEntry = zipArchiveToExtract.Entries[fileCounter];
    string nameOfFileInZipEntry = archiveFileEntry.Name;
    archiveFileEntry.Extract(nameOfFileInZipEntry);
}

ตัวอย่างโค้ดทั้งหมดในการแตกไฟล์ ZIP

ด้านล่างนี้คือตัวอย่างทั้งหมดของการแตกไฟล์ ZIP โดยใช้ C#:

// เปิดไฟล์จากดิสก์โดยใช้ไฟล์สตรีม
FileStream zipFileToBeExtracted = File.Open("ZipFileToBeExtracted.zip", FileMode.Open);

// โหลดสตรีม Zip ลงในวัตถุ Archive
Archive zipArchiveToExtract = new Archive(zipFileToBeExtracted);

// รับจำนวนไฟล์ใน archive
int numberOfFilesInArchive = zipArchiveToExtract.Entries.Count;

// วนลูปผ่าน archive สำหรับแต่ละไฟล์
for (int fileCounter = 0; fileCounter < numberOfFilesInArchive; fileCounter++)
{
    // รับแต่ละรายการ zip archive และแตกไฟล์
    ArchiveEntry archiveFileEntry = zipArchiveToExtract.Entries[fileCounter];
    string nameOfFileInZipEntry = archiveFileEntry.Name;
    archiveFileEntry.Extract(nameOfFileInZipEntry);
}

ข้อมูลเพิ่มเติม

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

สรุป

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

 แบบไทย