צור GZip ב-C#

ארכיוני GZip(.gz) משמשים לדחיסת קובץ אחד או יותר באמצעות אלגוריתם הדחיסה של GNU. הוא משמש בדרך כלל לדחיסת קבצים במערכות הפעלה UNIX. במאמר זה תלמדו כיצד לדחוס קבצים באמצעות GZip ב-C#. יתרה מכך, המאמר יעסוק גם בפירוק ארכיוני GZip ב-C#.

דחוס קבצים עם GZip ב-C# - התקנת API

כדי לדחוס ולשחרר קבצים באמצעות GZip, נשתמש ב-Aspose.ZIP עבור .NET. זהו API רב עוצמה המאפשר לך לעבוד עם פורמטי ארכיון פופולריים, כולל ZIP, 7z, GZip וכו’. אתה יכול להוריד את ה-API או להתקין אותו באמצעות NuGet.

PM> Install-Package Aspose.Zip

דחיסת קובץ GZip ב-C#

להלן השלבים לדחיסת קבצים עם GZip ב-C#.

דוגמת הקוד הבאה מראה כיצד לדחוס קבצים ל-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 לתוך אובייקט זרם זיכרון. להלן השלבים לביצוע פעולה זו.

דגימת הקוד הבאה מראה כיצד לחלץ ארכיון 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 באמצעות תיעוד. בנוסף, תוכל ליצור איתנו קשר כדי לשתף את השאילתות שלך דרך הפורום שלנו.

ראה גם