Kā izveidot ZIP failu atmiņā C#

Kā izveidot ZIP failu atmiņā C#

Šajā pakāpeniskajā apmācībā jūs uzzināsiet, kā izveidot ZIP failu atmiņā, izmantojot C#. šeit aprakstītais process ļauj jums komprimēt failus un mapes Zip formātā bez nepieciešamības radīt fizisku faili uz disku.

ZIP failu izveides priekšrocības atmiņā

  • Darbības rezultāti:- Izvairies no I/O diska virsmas, padarot procesu ātrāku.

  • Laika uzglabāšana:- Kaps failus atmiņā, lai ātri piekļūtu un apstrādātu.

    • elastība ir:- Tas atvieglo tādu darbību kā failu nosūtīšana caur tīklu bez vidēja uzglabāšanas.

Priekšnoteikumi: Vides sagatavošana

  • Iestatīt Visual Studio vai jebkuru saderīgu .NET IDE.
  • Instalējiet Aspose.ZIP no NuGet Package Manager.

Pakāpeniski ceļvedis, kā izveidot ZIP failu atmiņā

1. solis: Uzstādīt Aspose.ZIP

Sāciet, pievienojot Aspose.ZIP bibliotēku savam projektam.

Install-Package Aspose.ZIP

2. solis: iekļauj nosaukuma telpu

Pievienojiet to Aspose.Zip Nomespace jūsu kodu, lai izmantotu tās funkcijas.

using Aspose.Zip;

3. solis: Lejupielādēt failus no disku

Atgrieziet failu maršrutus no avota mapiem līnijā.

string[] filesArray = Directory.GetFiles("YourFolderPath", "*.*", SearchOption.TopDirectoryOnly);

4. solis: izveidot arhīva objektu

Iespējams uzreiz Archive objekts atmiņā, lai turētu ZIP ieejas.

using (MemoryStream zipFileInMemory = new MemoryStream())
{
    using (Archive zipArchive = new Archive())
    {
        // Further processing follows here
    }
}

5. solis: izveidot arhīva ierakstus

Pārslēdziet failu un izveidojiet ArchiveEntry Par katru failu.

foreach (string fileDiskPath in filesArray)
{
    string fileName = Path.GetFileName(fileDiskPath);
    zipArchive.CreateEntry(fileName, fileDiskPath);
}

6. solis: saglabāt ZIP failu atmiņā

Izveidojiet ZIP arhīvu atmiņā, saglabājot to MemoryStream.

zipArchive.Save(zipFileInMemory);

Pilns koda piemērs, lai izveidotu ZIP failu atmiņā

Šeit ir pilns kods, kas ilustrē, kā izveidot ZIP failu atmiņā:

// Create a MemoryStream instance for the ZIP file
using (MemoryStream zipFileInMemory = new MemoryStream())
{
    // Create an empty Archive object for ZIP
    using (Archive zipArchive = new Archive())
    {
        // Get all files from a folder and store their paths in a string array
        string[] filesArray = Directory.GetFiles("YourFolderPath", "*.*", SearchOption.TopDirectoryOnly);

        // Loop through the array and create an ArchiveEntry for each file
        foreach (string fileDiskPath in filesArray)
        {
            string fileName = Path.GetFileName(fileDiskPath);
            zipArchive.CreateEntry(fileName, fileDiskPath);
        }

        // Save the Archive in memory
        zipArchive.Save(zipFileInMemory);
    }
}

Papildu informācija

  • Jūs varat viegli mainīt kodu, lai izmantotu šifrēšanas vai kompresijas metodes ZIP failu.
  • Šis risinājums ļauj veikt turpmākas darbības uz atmiņas ZIP failu, piemēram, nosūtot to pa tīklu vai glabāt to uz disku vēlāk.

Conclusion

Šis apmācība ir parādījusi, kā izveidot ZIP failu atmiņā, izmantojot C#. Izpildot sniegtos rādītājus, jūs varat efektīvi pārvaldīt faila kompresiju jūsu lietojumprogrammās bez nepieciešamības radīt fiziskus failus.

 Latviski