วิธีการสร้างไฟล์ 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.

 แบบไทย