สร้างไฟล์ ZIP C#

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

ออนไลน์สร้างไฟล์ ZIP ฟรี

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

สร้างไฟล์ ZIP – การติดตั้ง C# API

คุณสามารถสร้างไฟล์ ZIP เพื่อบีบอัดไฟล์หลายไฟล์เป็นไฟล์เดียวได้ เพียงกำหนดค่า Conholdate.Total สำหรับ .NET โดยเข้าไปจากส่วน Releases หรือติดตั้งด้วยคำสั่ง NuGet ต่อไปนี้:

Install-Package Conholdate.Total 

สร้าง ZIP สำหรับไฟล์ใน C#

ส่วนนี้ครอบคลุมถึงแนวทางต่างๆ ในการสร้างไฟล์ ZIP สำหรับการบีบอัดไฟล์ โดยกล่าวถึงการบีบอัดไฟล์เดียวและหลายไฟล์ลงในไดเร็กทอรี ZIP เดียวตามความต้องการของคุณ

สร้างไฟล์ ZIP สำหรับไฟล์เดียวใน C#

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

  • สร้างอินสแตนซ์ของคลาส FileStream และระบุชื่อสำหรับไฟล์ ZIP เอาต์พุต
  • ระบุไฟล์ที่จะเพิ่มลงในไฟล์เก็บถาวร
  • เตรียมใช้งานอินสแตนซ์ของคลาส Archive
  • สร้างไฟล์ ZIP เอาต์พุต

ข้อมูลโค้ดต่อไปนี้สาธิตวิธีการสร้างไฟล์ ZIP สำหรับไฟล์เดียวใน C#:

using (FileStream zipFile = File.Open(dataDir + "CompressSingleFile_out.zip", FileMode.Create))
{
    //ไฟล์ที่จะเพิ่มลงในไฟล์เก็บถาวร
    using (FileStream source1 = File.Open(dataDir + "test.txt", FileMode.Open, FileAccess.Read))
    {
        using (var archive = new Archive(new ArchiveEntrySettings()))
        {
            archive.CreateEntry("test.txt", source1);

            archive.Save(zipFile);
        }
    }
}

สร้างไฟล์ ZIP สำหรับหลายไฟล์ใน C#

ขั้นตอนต่อไปนี้แสดงวิธีสร้างไดเรกทอรี ZIP สำหรับหลายไฟล์ใน C#:

  • ระบุไฟล์ต้นฉบับที่จะบีบอัด รวมถึงชื่อของไฟล์เอาต์พุต
  • สร้างรายการสำหรับไฟล์เป้าหมายโดยใช้เมธอด CreateEntry
  • บันทึกไฟล์ ZIP เอาต์พุตที่มีหลายไฟล์

โค้ดตัวอย่างด้านล่างแสดงวิธีสร้างไฟล์ ZIP สำหรับไฟล์หลายไฟล์ใน C#:

using (FileStream zipFile = File.Open(dataDir + "CompressMultipleFiles_out.zip", FileMode.Create))
{
    using (FileStream source1 = File.Open(dataDir + "test.txt", FileMode.Open, FileAccess.Read))
    {
        using (FileStream source2 = File.Open(dataDir + "test2.txt", FileMode.Open, FileAccess.Read))
        {
            using (var archive = new Archive())
            {
                archive.CreateEntry("test.txt", source1);
                archive.CreateEntry("test1.txt", source2);
                archive.Save(zipFile, new ArchiveSaveOptions() { Encoding = Encoding.ASCII, ArchiveComment = "There are two poems from Canterbury corpus" });
            }
        }
    }
}

สร้าง ZIP สำหรับโฟลเดอร์ใน C#

บางครั้งคุณจำเป็นต้องจัดแพ็กเกจทั้งโฟลเดอร์ รวมถึงไฟล์ทั้งหมดในโฟลเดอร์ให้เป็นไฟล์ ZIP ขั้นตอนด้านล่างนี้สรุปวิธีการสร้างไฟล์ ZIP สำหรับโฟลเดอร์ใน C#:

  • สร้างอ็อบเจ็กต์คลาส FileStream และระบุชื่อไฟล์ ZIP เอาต์พุต
  • สร้างวัตถุของคลาสเอกสารเก่า
  • กำหนดเส้นทางไปยังโฟลเดอร์
  • สร้างและส่งออกไฟล์ ZIP เอาต์พุต

ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีการสร้างไฟล์ ZIP สำหรับโฟลเดอร์ใน C#:

using (FileStream zipFile = File.Open(dataDir + "CompressDirectory_out.zip", FileMode.Create))
{
    using (Archive archive = new Archive())
    {
        DirectoryInfo corpus = new DirectoryInfo(dataDir + "zipfolder");
        archive.CreateEntries(corpus);
        archive.Save(zipFile);
    }
}

รับใบอนุญาตการประเมินผลฟรี

คุณสามารถขอ [ใบอนุญาตชั่วคราวฟรี] เพื่อประเมิน API ได้เต็มประสิทธิภาพโดยไม่มีข้อจำกัดใดๆ

Conholdate.Total สำหรับ .NET - ทรัพยากรการเรียนรู้

คุณสามารถอ่านแหล่งข้อมูลต่อไปนี้เพื่อสำรวจฟีเจอร์ที่ API นำเสนอเพิ่มเติม

สรุป

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

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