Како креирати ЗИП датотеку у меморији у Ц #

Како креирати ЗИП датотеку у меморији у Ц #

У овом корак по корак туториал ћете научити како да креирате ЗИП датотеку у меморији користећи Ц#. Процес наведени овде вам омогућава да компресирате датотеке и фасцикле у ЗИП формат без потребе да креирате физичку датотеку на диску.

Предности креирања ЗИП датотека у меморији

  • Извршеност:- Избегава преоптерећење I/O диска, чинећи процес бржим.

  • Временско складиштење:- Покрећете датотеке у меморији за брз приступ и обраду.

  • Флексибилност:- Омогућава операције као што су шаљење датотека преко мреже без посредног складиштења.

Принципи: Припрема за животну средину

  • Инсталирајте Visual Studio или било који компатибилан .NET IDE.
  • Инсталирајте Aspose.ZIP са НуГет Менаџера пакета.

Корак по корак водич за креирање ЗИП датотеке у меморији

Корак 1: Инсталирајте Aspose.ZIP

Počnite dodavanjem Aspose.ZIP knjižnice vašem projektu.

Install-Package Aspose.ZIP

Корак 2: Укључите именовање

Add the Aspose.Zip namespace to your code to use its functionalities.

using Aspose.Zip;

Корак 3: Преузмите датотеке са диска

Вратите путеве датотеке из изворне фасцикле у реду редова.

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

Корак 4: Успостављање архивног објекта

Instantiate an Archive object in memory to hold the ZIP entries.

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

Корак 5: Креирање архивних улога

Loop through the file array and create an ArchiveEntry for each file.

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

Корак 6: Сачувајте ЗИП датотеку у меморији

Create the ZIP archive in memory by saving it to the MemoryStream.

zipArchive.Save(zipFileInMemory);

Потпуни пример кода за креирање ЗИП датотеке у меморији

Ево комплетног кода који илуструје како да креирате ЗИП датотеку у меморији:

// 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);
    }
}

Додатне информације

  • Можете лако да промените код да бисте применили методе шифровања или компресије на ЗИП датотеку.
  • Ово решење вам омогућава да извршите даље операције на ЗИП датотеку у меморији, као што је да га пошаљете преко мреже или да га касније сачувате на диск.

Закључак

Овај туториал је показао како да креирате ЗИП датотеку у меморији користећи Ц#. Следећи испоруку, можете ефикасно управљати компресијом датотека унутар апликација без потребе да креирате физичке датотеке.

 Српски