ใน โพสต์ก่อนหน้า, เราได้สำรวจวิธีการต่างๆ ในการสร้าง ZIP archives โดยใช้ C#. บทความนี้จะขยายความรู้ดังกล่าวโดยมุ่งเน้นไปที่รูปแบบ 7z ซึ่งอิงจากสถาปัตยกรรมโอเพนซอร์สและเสนออัตราการบีบอัดสูง โดยเฉพาะอย่างยิ่ง 7z รองรับการเข้ารหัส AES 256 บิต ซึ่งช่วยให้คุณสามารถปกป้องไม่เพียงแต่ไฟล์ แต่ยังรวมถึงชื่อไฟล์ด้วย
ในคู่มือนี้ คุณจะได้เรียนรู้วิธีการ สร้าง 7z (7-Zip) archives โดยโปรแกรมใช้ C# เราจะครอบคลุม:
- การสร้าง 7z Archive ที่มีรายการเดียว
- การสร้าง 7z Archive ที่เข้ารหัส AES
- การตั้งค่ารหัสผ่านที่แตกต่างกันสำหรับรายการ 7z
ตัวอย่างและโค้ดทั้งหมดอิงจาก Aspose.ZIP for .NET API ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง API โดยใช้วิธีใดวิธีหนึ่งต่อไปนี้:
- ติดตั้งผ่าน NuGet Package Manager.
- ดาวน์โหลด DLL และเพิ่มการอ้างอิงในโปรเจกต์ของคุณ
สร้าง 7z (7-Zip) Archive โดยใช้ C#
คุณสามารถบีบอัดไฟล์ลงใน 7z archive ในสองสถานการณ์หลัก: เมื่อจัดการกับไฟล์เดียวหรือหลายไฟล์ นี่คือวิธีจัดการทั้งสองสถานการณ์
สร้าง 7z Archive ที่มีรายการเดียว
เพื่อสร้าง 7z archive ที่มีไฟล์เดียว ให้ทำตามขั้นตอนเหล่านี้:
- เปิด FileStream ใหม่เพื่อสร้างไฟล์ 7z
- สร้างอินสแตนซ์ของคลาส SevenZipArchive
- เพิ่มไฟล์ลงใน archive โดยใช้วิธี SevenZipArchive.CreateEntry(String, String, Boolean, SevenZipEntrySettings)
- บันทึก archive โดยใช้วิธี SevenZipArchive.Save(Stream)
นี่คือตัวอย่าง C# 7z archive ที่แสดงขั้นตอนข้างต้น:
สร้าง 7z Archive ที่มีหลายรายการ
หากคุณต้องการบีบอัดหลายไฟล์ คุณสามารถวางไฟล์เหล่านั้นในโฟลเดอร์และส่งผ่านเส้นทางของโฟลเดอร์ไปยังวิธี SevenZipArchive.CreateEntries() ทำตามขั้นตอนเหล่านี้:
- สร้างอินสแตนซ์ของคลาส SevenZipArchive
- ส่งผ่านเส้นทางของโฟลเดอร์ไปยังวิธี SevenZipArchive.CreateEntries(String, Boolean)
- เรียกใช้วิธี SevenZipArchive.Save(String)
นี่คือวิธีสร้าง 7z archive ที่มีหลายรายการโดยใช้ C#:
สร้าง 7z Archive ที่เข้ารหัส AES โดยใช้ C#
รูปแบบ 7z รองรับการเข้ารหัส AES เพื่อความปลอดภัยเพิ่มเติม เพื่อเข้ารหัสไฟล์ 7z ให้ใช้คลาส SevenZipAESEncryptionSettings ด้านล่างนี้เป็นตัวอย่างโค้ดที่แสดงวิธีการสร้าง 7z archive ที่เข้ารหัส AES โดยใช้ C#:
ตั้งค่ารหัสผ่านที่แตกต่างกันสำหรับรายการ 7z โดยใช้ C#
รูปแบบ 7z ยังช่วยให้คุณกำหนดรหัสผ่านเฉพาะสำหรับแต่ละรายการไฟล์ หากคุณกำลังบีบอัดหลายไฟล์ คุณสามารถระบุรหัสผ่านที่แตกต่างกันสำหรับแต่ละไฟล์ นี่คือวิธีการทำ:
- สร้าง FileStream ใหม่สำหรับไฟล์ archive 7z
- เข้าถึงแต่ละรายการไฟล์โดยใช้คลาส FileInfo
- สร้างอินสแตนซ์ของคลาส SevenZipArchive
- เพิ่มรายการลงใน 7z archive โดยใช้วิธี SevenZipArchive.CreateEntry(String, FileInfo, Boolean, SevenZipEntrySettings)
- บันทึก archive โดยใช้วิธี SevenZipArchive.Save(Stream)
ตรวจสอบตัวอย่างโค้ดต่อไปนี้เพื่อดูวิธีตั้งค่ารหัสผ่านที่แตกต่างกันสำหรับแต่ละรายการใน 7z archive:
สรุป
ในบทความนี้ เราได้ครอบคลุมวิธีการ สร้าง 7z archives โดยโปรแกรมใช้ C# เรายังสำรวจวิธีการใช้การเข้ารหัส AES เพื่อเพิ่มความปลอดภัยและวิธีการตั้งค่ารหัสผ่านเฉพาะสำหรับแต่ละรายการไฟล์ สำหรับการอ่านเพิ่มเติมเกี่ยวกับการบีบอัดและการคลายบีบอัดไฟล์ คุณสามารถตรวจสอบ Aspose.ZIP documentation.
บทความที่เกี่ยวข้อง
โดยการใช้ Aspose Plugin สำหรับ .NET คุณสามารถรวม .NET 7-Zip compression เข้ากับแอปพลิเคชันของคุณได้อย่างง่ายดาย ปรับปรุงกระบวนการจัดการไฟล์ของคุณ และเพิ่มความสามารถให้กับซอฟต์แวร์ของคุณ สำหรับเพียง $99 คุณสามารถปลดล็อกฟีเจอร์ที่ทรงพลังที่รองรับการจัดการไฟล์ขนาดใหญ่ การบีบอัดแบบอะซิงโครนัส และอื่นๆ