Create 7Zip Archive in C#

في المقالة السابقة, استكشفنا كيفية إنشاء ZIP الأرشيفات باستخدام C#. الآن، سنحول تركيزنا إلى 7z format, التي تشتهر بنسبة ضغط عالية وقدرات قوية 256-bit AES encryption القدرات. هذا يجعل مكتبة .NET 7z خيارًا مثاليًا للتعامل مع الأرشيفات بأمان وكفاءة.

ما ستتعلمه

في هذا الدرس، ستتعلم كيفية إنشاء أرشيفات 7z (7-Zip) برمجيًا باستخدام C#. سنغطي المواضيع التالية:

سنستخدم الـ Aspose.ZIP for .NET API. يمكنك تثبيت هذه المكتبة عبر:

إنشاء أرشيف 7z (7-Zip) باستخدام C#

يمكنك ضغط الملفات إلى أرشيف 7z، مناسب لكل من ملف واحد و ملفات متعددة السيناريوهات. توفر هذه الوظيفة حلاً فعالاً من حيث التكلفة للمطورين الذين يبحثون عن أداة استخراج .NET RAR.

إنشاء أرشيف 7z بمدخل واحد

لإنشاء أرشيف 7z بملف واحد، اتبع الخطوات التالية:

  1. افتح جديدًا FileStream لإنشاء ملف 7z.
  2. إنشاء نسخة من SevenZipArchive الفئة.
  3. أضف الملف باستخدام SevenZipArchive.CreateEntry.
  4. احفظ الأرشيف باستخدام SevenZipArchive.Save.

إليك مثال C# للتوضيح:

using Aspose.Zip.Saving;
using Aspose.Zip.SevenZip;
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    FileInfo fi1 = new FileInfo("data1.bin");
    FileInfo fi2 = new FileInfo("data2.bin");
    FileInfo fi3 = new FileInfo("data3.bin");
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("entry1.bin", fi1, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test1")));
        archive.CreateEntry("entry2.bin", fi2, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test2")));
        archive.CreateEntry("entry3.bin", fi3, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test3")));
        archive.Save(sevenZipFile);
    }
}

إنشاء أرشيف 7z مع عدة مدخلات

ضغط عدة ملفات في أرشيف 7z واحد:

  1. إنشاء كائن من SevenZipArchive الفئة.
  2. استخدم SevenZipArchive.CreateEntries ومرّر مسار المجلد.
  3. احفظ الأرشيف باستخدام SevenZipArchive.Save.

مثال:

using Aspose.Zip.Saving;
using Aspose.Zip.SevenZip;
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    FileInfo fi1 = new FileInfo("data1.bin");
    FileInfo fi2 = new FileInfo("data2.bin");
    FileInfo fi3 = new FileInfo("data3.bin");
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("entry1.bin", fi1, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test1")));
        archive.CreateEntry("entry2.bin", fi2, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test2")));
        archive.CreateEntry("entry3.bin", fi3, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test3")));
        archive.Save(sevenZipFile);
    }
}

إنشاء أرشيف 7z مشفر بـ AES باستخدام C#

لتأمين أرشيفاتك، يمكنك استخدام AES encryption, ميزة في مكتبة .NET 7z التي تعزز أمان الأرشيف:

  1. إنشاء كائن من SevenZipAESEncryptionSettings.
  2. تكوين معلمات التشفير اللازمة.
  3. أضف مدخلات إلى الأرشيف واحفظه.

مثال:

using Aspose.Zip.Saving;
using Aspose.Zip.SevenZip;
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    FileInfo fi1 = new FileInfo("data1.bin");
    FileInfo fi2 = new FileInfo("data2.bin");
    FileInfo fi3 = new FileInfo("data3.bin");
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("entry1.bin", fi1, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test1")));
        archive.CreateEntry("entry2.bin", fi2, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test2")));
        archive.CreateEntry("entry3.bin", fi3, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test3")));
        archive.Save(sevenZipFile);
    }
}

تعيين كلمات مرور مختلفة لمدخلات 7z باستخدام C#

لتعيين كلمات مرور فريدة لمدخلات مختلفة داخل الأرشيف الخاص بك:

  1. فتح FileStream لأرشيف 7z.
  2. استخدم SevenZipArchive.CreateEntry لإضافة إدخالات مع تحديد كلمات مرور فردية.
  3. احفظ الأرشيف.

مثال:

using Aspose.Zip.Saving;
using Aspose.Zip.SevenZip;
using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    FileInfo fi1 = new FileInfo("data1.bin");
    FileInfo fi2 = new FileInfo("data2.bin");
    FileInfo fi3 = new FileInfo("data3.bin");
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("entry1.bin", fi1, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test1")));
        archive.CreateEntry("entry2.bin", fi2, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test2")));
        archive.CreateEntry("entry3.bin", fi3, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test3")));
        archive.Save(sevenZipFile);
    }
}

الخلاصة

في هذه المقالة، استعرضنا كيفية إنشاء أرشيفات 7z برمجيًا في C#, قم بتأمينها باستخدام تشفير AES, وتعيين كلمات مرور فريدة للمدخلات. للحصول على ميزات أكثر تقدماً وأفضل الممارسات، تحقق من Aspose.ZIP documentation.

من خلال الاستفادة من Aspose ملحق لـ .NET، يمكنك إدارة الأرشيفات بكفاءة، وتطبيق التشفير، وتبسيط سير عملك—كل ذلك مقابل فقط $99. افتح الميزات المتقدمة اليوم باستخدام هذا المكوّن الإضافي الموثوق لاستخراج الأرشيفات .NET، والذي يدعم جميع الصيغ الرئيسية!

More in this category