ארכיוני GZip(.gz) משמשים לדחיסת קובץ אחד או יותר באמצעות אלגוריתם הדחיסה של GNU. הוא משמש בדרך כלל לדחיסת קבצים במערכות הפעלה UNIX. במאמר זה תלמדו כיצד לדחוס קבצים באמצעות GZip ב-C#. יתרה מכך, המאמר יעסוק גם בפירוק ארכיוני GZip ב-C#.
- C# GZip API לדחיסת ופירוק קבצים
- דחיסת קבצים באמצעות GZip ב-C#
- פירוק ארכיון GZip ב-C#
- חלץ ארכיון GZip לתוך Stream ב-C#
דחוס קבצים עם GZip ב-C# - התקנת API
כדי לדחוס ולשחרר קבצים באמצעות GZip, נשתמש ב-Aspose.ZIP עבור .NET. זהו API רב עוצמה המאפשר לך לעבוד עם פורמטי ארכיון פופולריים, כולל ZIP, 7z, GZip וכו’. אתה יכול להוריד את ה-API או להתקין אותו באמצעות 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#.
- צור אובייקט של המחלקה 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);
}
}
חלץ GZip לתוך Stream ב-C#
אתה יכול גם לחלץ ארכיון 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);
}
דחיסה ושחרור של קבצי GZip - קבל רישיון חינם
אתה יכול לקבל רישיון זמני ללא תשלום לדחיסת או דחיסת ארכיוני GZip ללא מגבלות הערכה.
סיכום
במאמר זה, למדת כיצד לדחוס או לשחרר קבצים באמצעות GZip ב-C#. יתר על כן, ראית כיצד לחלץ GZip כדי להזרים באופן תוכנתי באמצעות C# .NET. אתה יכול לחקור עוד על Aspose.ZIP עבור .NET באמצעות תיעוד. בנוסף, תוכל ליצור איתנו קשר כדי לשתף את השאילתות שלך דרך הפורום שלנו.