วิธีการสร้างไฟล์ ZIP ในหน่วยความจำด้วย C#

วิธีการสร้างไฟล์ ZIP ในหน่วยความจำด้วย C#

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

ประโยชน์ของการสร้างไฟล์ ZIP ในหน่วยความจํา

  • การแสดงผล:- หลีกเลี่ยงแผ่น I / O ด้านบนทําให้กระบวนการเร็วขึ้น

  • การจัดเก็บชั่วคราว:- Keeps ไฟล์ในหน่วยความจําสําหรับการเข้าถึงและประมวลผลอย่างรวดเร็ว

  • ความยืดหยุ่น:- ช่วยให้การดําเนินงานเช่นการส่งไฟล์ผ่านเครือข่ายโดยไม่มีการจัดเก็บกลาง

ข้อกําหนด: การเตรียมสิ่งแวดล้อม

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

คู่มือขั้นตอนเพื่อสร้างไฟล์ ZIP ในหน่วยความจํา

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

เริ่มต้นโดยเพิ่มห้องสมุด Aspose.ZIP ไปยังโครงการของคุณ

Install-Package Aspose.ZIP

ขั้นตอนที่ 2: รวมพื้นที่ชื่อ

เพิ่ม Aspose.Zip nameespace ไปยังรหัสของคุณเพื่อใช้ฟังก์ชั่นของมัน

using Aspose.Zip;

ขั้นตอนที่ 3: ดาวน์โหลดไฟล์จากดิสก์

กลับเส้นทางไฟล์จากโฟลเดอร์แหล่งที่มาไปยังแถว string

string[] filesArray = Directory.GetFiles("YourFolderPath", "*.*", SearchOption.TopDirectoryOnly);

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

อัจฉริยะ Archive วัตถุในหน่วยความจําเพื่อเก็บรหัส ZIP

using (MemoryStream zipFileInMemory = new MemoryStream())
{
    using (Archive zipArchive = new Archive())
    {
        // Further processing follows here
    }
}

ขั้นตอนที่ 5: สร้างรายการ Archive

ลองผ่านไฟล์ array และสร้างไฟล์ ArchiveEntry สําหรับแต่ละไฟล์

foreach (string fileDiskPath in filesArray)
{
    string fileName = Path.GetFileName(fileDiskPath);
    zipArchive.CreateEntry(fileName, fileDiskPath);
}

ขั้นตอน 6: บันทึกไฟล์ ZIP ในหน่วยความจํา

สร้างไฟล์ ZIP ในหน่วยความจําโดยบันทึกไว้ใน MemoryStream.

zipArchive.Save(zipFileInMemory);

ตัวอย่างรหัสสมบูรณ์เพื่อสร้างไฟล์ ZIP ในหน่วยความจํา

นี่คือรหัสสมบูรณ์ที่อธิบายวิธีการสร้างไฟล์ ZIP ในหน่วยความจํา:

// Create a MemoryStream instance for the ZIP file
using (MemoryStream zipFileInMemory = new MemoryStream())
{
    // Create an empty Archive object for ZIP
    using (Archive zipArchive = new Archive())
    {
        // Get all files from a folder and store their paths in a string array
        string[] filesArray = Directory.GetFiles("YourFolderPath", "*.*", SearchOption.TopDirectoryOnly);

        // Loop through the array and create an ArchiveEntry for each file
        foreach (string fileDiskPath in filesArray)
        {
            string fileName = Path.GetFileName(fileDiskPath);
            zipArchive.CreateEntry(fileName, fileDiskPath);
        }

        // Save the Archive in memory
        zipArchive.Save(zipFileInMemory);
    }
}

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

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

ข้อสรุป

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

 แบบไทย