GZip أرشيفات (.gz) تُستخدم لضغط ملف واحد أو أكثر باستخدام خوارزمية ضغط جنو zip. يتم استخدامه بشكل شائع لضغط الملفات في أنظمة تشغيل UNIX. في هذه المقالة ، ستتعلم كيفية ضغط الملفات باستخدام GZip (.gz) برمجيًا في C#. علاوة على ذلك ، ستغطي المقالة أيضًا كيفية فك ضغط أرشيفات GZip في C#.
- C# GZip API لضغط وفك ضغط الملفات
- ضغط الملفات باستخدام GZip في C#
- فك ضغط أرشيف GZip في C#
- استخراج أرشيف GZip إلى البث في C#
C# GZip Compression and Decompression API - تنزيل مجاني
لضغط وفك ضغط الملفات باستخدام GZip ، سنستخدم Aspose.ZIP for .NET. إنها واجهة برمجة تطبيقات قوية تتيح لك العمل مع تنسيقات أرشيف شائعة بما في ذلك ZIP ، 7z ، GZip ، إلخ. يمكنك إما تنزيل واجهة برمجة التطبيقات أو تثبيتها باستخدام NuGet.
PM> Install-Package Aspose.Zip
ضغط الملفات باستخدام GZip في C#
فيما يلي خطوات ضغط الملفات باستخدام GZip في C#.
- قم بإنشاء كائن من فئة GzipArchive.
- استخدم طريقة GzipArchive.SetSource(String) لإضافة ملف إلى الأرشيف.
- إنشاء أرشيف GZip باستخدام طريقة GzipArchive.Save(String).
يوضح نموذج التعليمات البرمجية التالي كيفية ضغط الملفات إلى GZip في C#.
using (GzipArchive archive = new GzipArchive())
{
// ضبط المصدر
archive.SetSource("data.bin");
// إنشاء أرشيف
archive.Save("archive.gz");
}
فك ضغط أرشيف GZip في C#
فيما يلي خطوات فك ضغط أرشيف GZip في C# باستخدام Aspose.ZIP لـ .NET.
- أنشئ كائنًا من فئة GzipArchive وقم بتهيئته باستخدام مسار أرشيف GZip.
- قم بإنشاء ملف للمحتوى المستخرج باستخدام طريقة File.Create(String).
- افتح GZip للاستخراج باستخدام طريقة GZipArchive.Open().
- اقرأ المحتوى المستخرج واكتبه في الملف.
يوضح نموذج التعليمات البرمجية التالي كيفية فك ضغط أرشيف GZip باستخدام C#.
// تحميل أرشيف GZip
using (var archive = new GzipArchive("archive.gz"))
{
// قم بإنشاء ملف
using (var extracted = File.Create("data.bin"))
{
// أرشيف مفتوح
var unpacked = archive.Open();
byte[] b = new byte[8192];
int bytesRead;
// الكتابة إلى الملف
while (0 < (bytesRead = unpacked.Read(b, 0, b.Length)))
extracted.Write(b, 0, bytesRead);
}
}
C# استخراج GZip إلى الدفق
يمكنك أيضًا استخراج أرشيف GZip إلى كائن تدفق الذاكرة. فيما يلي خطوات إجراء هذه العملية.
- قم بإنشاء كائن MemoryStream جديد.
- أنشئ كائنًا من فئة GzipArchive وقم بتهيئته باستخدام مسار أرشيف GZip.
- استخراج GZip والنسخ إلى تدفق الذاكرة باستخدام طريقة GZipArchive.Open().CopyTo (MemoryStream).
يوضح نموذج التعليمات البرمجية التالي كيفية استخراج أرشيف GZip في دفق ذاكرة باستخدام C#.
// إنشاء دفق الذاكرة
var ms = new MemoryStream();
// تحميل أرشيف GZip
using (GzipArchive archive = new GzipArchive(File.OpenRead("sample.gz")))
{
// استخراج ونسخ إلى دفق الذاكرة
archive.Open().CopyTo(ms);
Console.WriteLine(archive.Name);
}
C# GZip Compression and Decompression API - احصل على ترخيص مجاني
يمكنك الحصول على ترخيص مؤقت مجاني من أجل استخدام واجهة برمجة التطبيقات دون قيود التقييم.
استنتاج
في هذه المقالة ، تعلمت كيفية ضغط الملفات أو فك ضغطها باستخدام GZip في C#. علاوة على ذلك ، لقد رأيت كيفية استخراج GZip للدفق برمجيًا باستخدام C# .NET. يمكنك استكشاف المزيد حول Aspose.ZIP لـ .NET باستخدام التوثيق. بالإضافة إلى ذلك ، يمكنك الاتصال بنا لمشاركة استفساراتك عبر المنتدى.