บทนำเกี่ยวกับ ZIP Archives ใน C#
ZIP archives เป็นสิ่งจำเป็นสำหรับการบีบอัดและจัดระเบียบไฟล์และโฟลเดอร์ให้เป็นภาชนะเดียว พวกเขาไม่เพียงแต่ลดขนาดไฟล์เพื่อการจัดเก็บและการส่งที่มีประสิทธิภาพ แต่ยังรักษาเมตาดาต้าและสามารถเข้ารหัสเพื่อวัตถุประสงค์ด้านความปลอดภัย บทความนี้จะนำคุณผ่านวิธีการต่าง ๆ ในการ สร้างไฟล์ ZIP โดยโปรแกรมใน C# โดยครอบคลุมการดำเนินการต่าง ๆ เช่น การเพิ่มไฟล์และโฟลเดอร์ การสร้าง ZIP archives ที่มีรหัสผ่าน และการใช้การเข้ารหัส AES
สิ่งที่คุณจะได้เรียนรู้
ในบทความนี้ คุณจะได้ค้นพบวิธีการ:
- สร้าง ZIP archive โดยใช้ C#
- เพิ่มไฟล์หลายไฟล์ลงใน ZIP archive
- เพิ่มโฟลเดอร์ลงใน ZIP archive
- สร้าง ZIP archive ที่มีรหัสผ่านโดยใช้ ZipCrypto
- เข้ารหัส ZIP archive ด้วยการเข้ารหัส AES
- ตั้งค่าโหมดการบีบอัดแบบขนาน
C# ZIP Library
Aspose.ZIP for .NET เป็นเครื่องมือที่ทรงพลังสำหรับจัดการการดำเนินการไฟล์ ZIP ภายในแอปพลิเคชัน .NET มันทำให้กระบวนการบีบอัดหรือแตกไฟล์และโฟลเดอร์ง่ายขึ้นและสนับสนุนการเข้ารหัส AES เพื่อเพิ่มความปลอดภัย คุณสามารถติดตั้งไลบรารีนี้ได้อย่างง่ายดายจาก NuGet หรือดาวน์โหลดไฟล์ไบนารีจากส่วน Downloads
สร้าง ZIP Archive ใน C#
เพื่อ สร้างไฟล์ ZIP โดยโปรแกรมใน C# ให้ทำตามขั้นตอนเหล่านี้:
- สร้างอ็อบเจ็กต์ FileStream สำหรับ ZIP archive ที่ส่งออก
- เปิดไฟล์ต้นทางเป็นอ็อบเจ็กต์ FileStream
- สร้างอ็อบเจ็กต์ Archive
- เพิ่มไฟล์ลงใน archive โดยใช้เมธอด Archive.CreateEntry(string, FileStream)
- บันทึก ZIP archive ด้วยเมธอด Archive.Save(FileStream)
นี่คือตัวอย่างโค้ดที่แสดงวิธีการเพิ่มไฟล์ลงใน ZIP archive ใน C#:
เพิ่มไฟล์หลายไฟล์ลงใน ZIP Archive ใน C#
เมื่อคุณต้องการ เพิ่มไฟล์หลายไฟล์ลงใน ZIP archive คุณสามารถใช้หลายวิธี:
ใช้ FileStream เพื่อเพิ่มไฟล์หลายไฟล์
วิธีนี้ใช้คลาส FileStream เพื่อเพิ่มไฟล์ลงใน ZIP archive ผ่านเมธอด Archive.CreateEntry(String, FileStream) นี่คือวิธีที่คุณสามารถทำได้:
ใช้ FileInfo สำหรับไฟล์หลายไฟล์
อีกทางเลือกหนึ่ง คุณสามารถใช้คลาส FileInfo เพื่อโหลดไฟล์และเพิ่มลงใน ZIP archive ด้วยเมธอด Archive.CreateEntry(String, FileInfo) ด้านล่างนี้คือตัวอย่างโค้ด:
ใช้เส้นทางไฟล์
คุณยังสามารถระบุเส้นทางไฟล์โดยตรงไปยังเมธอด Archive.CreateEntry(String name, String path, Boolean openImmediately, ArchiveEntrySettings newEntrySettings) นี่คือตัวอย่าง:
เพิ่มโฟลเดอร์ลงใน ZIP Archive ใน C#
เพื่อ เพิ่มโฟลเดอร์ลงใน ZIP archive ใน C# คุณสามารถทำตามขั้นตอนเหล่านี้:
- สร้างอ็อบเจ็กต์ FileStream สำหรับ ZIP archive ที่ส่งออก
- สร้างอ็อบเจ็กต์ Archive
- ใช้คลาส DirectoryInfo เพื่อระบุโฟลเดอร์ที่คุณต้องการบีบอัด
- เพิ่มโฟลเดอร์ลงใน ZIP โดยใช้เมธอด Archive.CreateEntries(DirectoryInfo)
- บันทึก ZIP archive ด้วยเมธอด Archive.Save(FileStream)
นี่คือตัวอย่างโค้ดที่แสดงวิธีการเพิ่มโฟลเดอร์ลงในไฟล์ ZIP:
สร้าง ZIP ที่มีรหัสผ่านโดยใช้ ZipCrypto ใน C#
เพื่อรักษาความปลอดภัยให้กับ ZIP archives ของคุณ คุณสามารถใช้การป้องกันด้วยรหัสผ่านโดยใช้การเข้ารหัส ZipCrypto ซึ่งจะทำได้โดยการใช้คลาส ArchiveEntrySettings ในตัวสร้างของ Archive ซึ่งรับประเภทการเข้ารหัสเป็นพารามิเตอร์
นี่คือวิธีการสร้าง ZIP archive ที่มีรหัสผ่านโดยใช้ ZipCrypto ใน C#:
สร้าง ZIP ที่มีรหัสผ่านด้วยการเข้ารหัส AES
ไลบรารี Aspose.ZIP for .NET ยังสนับสนุนการเข้ารหัส AES สำหรับการป้องกัน ZIP archives คุณสามารถเลือกจากวิธีการเข้ารหัส AES ต่อไปนี้:
- AES128
- AES192
- AES256
ในการใช้การเข้ารหัส AES ใช้คลาส AesEcryptionSettings ด้านล่างนี้คือตัวอย่างโค้ดที่แสดงวิธีการสร้าง ZIP ที่มีรหัสผ่านด้วยการเข้ารหัส AES ใน C#:
ตั้งค่าโหมดการบีบอัดแบบขนาน
เพื่อจัดการหลายรายการอย่างมีประสิทธิภาพ คุณสามารถกำหนด API สำหรับการบีบอัดแบบขนานโดยใช้คลาส ParallelOptions โหมดการบีบอัดแบบขนานที่มีให้คือ:
- Never - ไม่บีบอัดแบบขนาน
- Always - บีบอัดแบบขนาน (ระวังปัญหาหน่วยความจำที่อาจเกิดขึ้น)
- Auto - ตัดสินใจโดยอัตโนมัติว่าจะใช้การบีบอัดแบบขนานตามรายการหรือไม่
นี่คือวิธีการตั้งค่าโหมดการบีบอัดแบบขนานในขณะที่บีบอัดไฟล์หลายไฟล์ด้วยไลบรารี Aspose C# ZIP:
เรียนรู้เพิ่มเติมเกี่ยวกับ C# .NET ZIP Library
เพื่อเพิ่มพูนความเข้าใจของคุณเกี่ยวกับ C# ZIP library สำรวจแหล่งข้อมูลต่อไปนี้:
ลองใช้เครื่องมือบีบอัด ZIP ออนไลน์ของเรา
คุณยังสามารถทดลองใช้ แอปพลิเคชันออนไลน์ฟรี ที่ใช้ Aspose.ZIP for .NET เพื่อบีบอัดไฟล์ลงใน ZIP archives ได้อย่างง่ายดาย
สรุป
ในบทความนี้ คุณได้เรียนรู้วิธีการ สร้าง ZIP archives โดยโปรแกรมใน C# ตัวอย่างโค้ดที่ให้ไว้แสดงวิธีการเพิ่มไฟล์และโฟลเดอร์ลงใน ZIP archives สร้างไฟล์ ZIP ที่มีรหัสผ่านโดยใช้ ZipCrypto และวิธีการเข้ารหัส AES และกำหนดการบีบอัดแบบขนาน หากคุณมีคำถามหรือจำเป็นต้องขอความช่วยเหลือเพิ่มเติม สามารถติดต่อเราได้ที่ ฟอรัม