عند العمل مع ملفات ZIP، قد تجد في كثير من الأحيان أن عدة أرشيفات ZIP متداخلة داخل أرشيف ZIP الأب. للوصول إلى محتويات هذه الأرشيفات المتداخلة، تحتاج أولاً إلى استخراج أرشيف ZIP الأب ثم التعامل مع كل أرشيف متداخل بشكل فردي. في هذه المقالة، سنرشدك إلى كيفية استخراج أرشيفات ZIP المتداخلة في C# .NET بكفاءة، دون كتابة كود معقد.

جدول المحتويات

استخدام واجهة برمجة التطبيقات .NET لاستخراج أرشيفات ZIP المتداخلة

لإجراء استخراج أرشيفات ZIP المتداخلة، سنستخدم مكتبة Aspose.ZIP for .NET. هذه الواجهة القوية مصممة خصيصًا لعمليات الأرشفة ضمن تطبيقات .NET، مما يتيح لك إنشاء والتلاعب بمختلف تنسيقات الأرشيف بسهولة. يمكنك اختيار تنزيل DLL الخاصة بالواجهة أو تثبيتها مباشرة باستخدام NuGet مع الأمر التالي:

PM> Install-Package Aspose.Zip

دليل خطوة بخطوة لفك ضغط أرشيفات ZIP المتداخلة

لإجراء العرض التوضيحي، قمنا بإعداد ملف ZIP يحتوي على ثلاثة مدخلات، بما في ذلك أرشيفات ZIP المتداخلة.

Nested ZIP Archives

أرشيفات ZIP المتداخلة

سنقوم باستخراج كل أرشيف ZIP متداخل وحفظ محتوياته في مجلدات منفصلة. إليك الخطوات لإجراء معالجة ملفات ZIP المتداخلة في .NET:

  1. إنشاء FileStream: تحميل ملف ZIP الأب باستخدام كائن FileStream.
  2. تحميل ملف ZIP: استخدام فئة Archive لتحميل ملف ZIP.
  3. التكرار عبر مدخلات الأرشيف: تكرار كل ArchiveEntry في مجموعة Archive.Entries.
  4. تصفية أرشيفات ZIP المتداخلة: تحديد أرشيفات ZIP في المجموعة ولكل من هذه الأرشيفات، قم بما يلي:
    • إنشاء MemoryStream: إنشاء MemoryStream ونسخ مدخل الأرشيف إليه باستخدام طريقة ArchiveEntry.Open().CopyTo(Stream) .
    • تحميل الأرشيف المتداخل: إنشاء مثيل من فئة Archive لتحميل الأرشيف المتداخل من MemoryStream.
    • استخراج إلى الدليل: أخيرًا، استخراج محتويات الأرشيف المتداخل إلى مجلد محدد باستخدام طريقة Archive.ExtractToDirectory(string).

إليك عينة من الكود توضح كيفية فك ضغط أرشيفات ZIP المتداخلة في C# .NET:

توضح لقطة الشاشة التالية المحتويات المستخرجة من أرشيفات ZIP المتداخلة:

Extracting nested ZIP archives in C# .NET

الأرشيفات المتداخلة التي تم فك ضغطها

احصل على ترخيص API مجاني

يمكنك الحصول على ترخيص مؤقت مجاني لمكتبة Aspose.ZIP for .NET، مما يتيح لك استخدام المكتبة دون أي قيود تقييم.

الخاتمة

في هذه المقالة، تعلمت أفضل طريقة لفك ضغط ملفات ZIP المتداخلة في C#. الدليل خطوة بخطوة وعينة الكود المقدمة توضح كيفية التعامل بكفاءة مع أرشيفات ZIP المتداخلة باستخدام إطار عمل .NET. لاستكشاف المزيد من الميزات، لا تتردد في زيارة وثائق Aspose.ZIP أو طرح الأسئلة في منتدانا.

انظر أيضًا