إنشاء أرشيف لتخزين الملفات، سواء كانت واحدة أو متعددة

تبسيط إدارة الملفات باستخدام أدوات الأرشفة .NET

نظرة عامة

كيفية ضغط عدة ملفات

الافتراضي هو خوارزمية انكماش

Zip compression with Deflate algoritm

    using (Archive archive = new Archive())
    {
        archive.CreateEntry("first.bin",  "data1.bin");
        archive.CreateEntry("second.bin",  "data2.bin");
        // Add as many entries as you need 
        archive.Save("archive.zip");	
    }

كيفية إنشاء أرشيفات 7-ZIP لعدة ملفات

الافتراضي لـ 7-zip هو خوارزمية LZMA

7-Zip with LZMA algorithm

    using (SevenZipArchive archive = new SevenZipArchive())
    {
        archive.CreateEntry("first.bin",  "data1.bin");
        archive.CreateEntry("second.bin",  "data2.bin");	
        // Add as many entries as you need 	
        archive.Save("archive.7z");	
    }

أرشيف XAR مع عدة ملفات

الافتراضي هو خوارزمية ZLib

XAR with ZLib algorithm

    using (XarArchive archive = new XarArchive())
    {
        archive.CreateEntry("first.bin",  "data1.bin");
        archive.CreateEntry("second.bin",  "data2.bin");
        // Add as many entries as you need 	
        archive.Save("archive.xar");	
    }

تخزين عدة ملفات بدون ضغط

نهج تنسيقات TAR وCPIO مشابه ويكمن في طريقة CreateEntry المعروفة بالفعل.

أرشيف TAR بدون ضغط

TAR storing files without compression

    using (TarArchive archive = new TarArchive())
    {
        archive.CreateEntry("first.bin",  "data1.bin");
        archive.CreateEntry("second.bin",  "data2.bin");
        // Add as many entries as you need 
        archive.Save("archive.tar");
    }

أرشيف CPIO بدون ضغط

CPIO storing files without compression

    using (TarArchive archive = new TarArchive())
    {
        archive.CreateEntry("first.bin",  "data1.bin");
        archive.CreateEntry("second.bin",  "data2.bin");
        // Add as many entries as you need 
        archive.Save("archive.cpio");
    }

تنسيقات الضغط فقط بدون إدخالات

مثل هذه الأرشيفات مثل GZIP وLZ وBZIP2 وXZ وZ لا تدعم الإدخالات ويمكنها ضغط مصدر واحد فقط. انظر العينات مع هذا الضغط.

أرشيف GZ - تنسيقات الضغط فقط بدون إدخالات

GZIP with compress only single source

using (FileStream source = File.Open("alice29.txt", FileMode.Open, FileAccess.Read))
{
    using (GzipArchive archive = new GzipArchive())
    {
        archive.SetSource(source);
        archive.Save("archive.gz");
    }
}

أرشيف LZ هو تنسيقات الضغط فقط بدون إدخالات

LZIP with compress only single source

using (FileStream source = File.Open("alice29.txt", FileMode.Open, FileAccess.Read))
{
    using (GzipArchive archive = new GzipArchive())
    {
        archive.SetSource(source);
        archive.Save("archive.gz");
    }
}

يسمح Aspose.ZIP بدمج تنسيقات الأرشيف فقط والضغط فقط بطريقة واحدة. فيما يلي مثال لهذه الوظيفة مع مجموعة TAR.GZ. لتحقيق ذلك، نستخدم طريقة SaveGzipped.

تركيبة TAR.GZ

توجد طرق مشابهة لتنسيقات الضغط LZIP وXZ وZStandard وZ.

TAR.GZ with SaveGzipped method

    using (TarArchive archive = new TarArchive())
    {
        archive.CreateEntry("first.bin",  "data1.bin");
        archive.CreateEntry("second.bin",  "data2.bin");
        archive.SaveGzipped("archive.tar.gz");
    }

TAR.BZ2

ومع ذلك، نحتاج إلى استخدام طريقة أخرى لتنسيق BZIP2.

BZIP2 with SaveGzipped method

    using (TarArchive tar = new TarArchive())
    {
        tar.CreateEntry("first.bin",  "data1.bin");
        tar.CreateEntry("second.bin",  "data2.bin");	
        using (Bzip2Archive archive = new Bzip2Archive())
        {
            archive.SetSource(tar);
            archive.Save("archive.tar.bz2");
        } 
    }

ميزات Aspose.ZIP الأخرى المدعومة لـ .NET API

استخدم مكتبة Aspose.ZIP C# لتحويل مستندات الملفات المضغوطة ودمجها وتحريرها واستخراج البيانات من الأرشيفات والمزيد!

  

Support and Learning Resources

  
  

Aspose.Zip offers individual archive processing APIs for other popular development environments, listed below: