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