Hogyan készítsünk ZIP fájlt a memóriában C#
Ebben a lépésről lépésre útmutatóban megtanulják, hogyan kell létrehozni egy ZIP fájlt a memóriában a C# használatával.A folyamat itt felsorolt lehetővé teszi, hogy a fájlokat és a mappákat egy ZIP formátumban, anélkül, hogy fizikai fájlt kell létrehozni a lemezre.
A ZIP fájlok létrehozásának előnyei a memóriában
A teljesítmény:- Kerülje az I/O lemez felfelé, így a folyamat gyorsabb.
ideiglenes tárolás:- A fájlokat a memóriában rögzíti a gyors hozzáféréshez és feldolgozáshoz.
rugalmasság:- Lehetővé teszi az olyan műveleteket, mint a fájlok hálózaton keresztül történő elküldését közvetett tárolás nélkül.
Előfeltételek: a környezet előkészítése
- A Visual Studio vagy bármely kompatibilis .NET IDE beállítása.
- Telepítse az Aspose.ZIP-t a NuGet csomagkezelőből.
Lépésről lépésre útmutató a ZIP fájl létrehozásához a memóriában
1. lépés: Az Aspose.ZIP telepítése
Kezdje az Aspose.ZIP könyvtár hozzáadásával a projekthez.
Install-Package Aspose.ZIP
2. lépés: A névtér beépítése
Add the Aspose.Zip
namespace to your code to use its functionalities.
using Aspose.Zip;
3. lépés: Töltse le a fájlokat a lemezről
Visszaállítsa a fájl útvonalait a forráskódból egy sorrendbe.
string[] filesArray = Directory.GetFiles("YourFolderPath", "*.*", SearchOption.TopDirectoryOnly);
4. lépés: Hozzon létre egy archív tárgyat
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. lépés: Készítsen archív bejegyzéseket
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. lépés: mentse a ZIP fájlt a memóriában
Create the ZIP archive in memory by saving it to the MemoryStream
.
zipArchive.Save(zipFileInMemory);
Teljes kódminták létrehozásához ZIP fájl a memóriában
Íme a teljes kód, amely illusztrálja, hogyan kell létrehozni egy ZIP fájlt a memóriában:
// 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);
}
}
További információk
- Könnyen módosíthatja a kódot, hogy titkosítási vagy tömörítési módszereket alkalmazzon a ZIP fájlra.
- Ez a megoldás lehetővé teszi, hogy további műveleteket végezzen a memóriában lévő ZIP fájlban, mint például a hálózaton keresztül történő elküldését, vagy később a lemezre menteni.
következtetések
Ez a kézikönyv megmutatta, hogyan kell létrehozni egy ZIP fájlt a memóriában a C# használatával. Azáltal, hogy követi a rendelkezésre álló kifejezést, akkor hatékonyan kezeli a fájl tömörítését az alkalmazásokon belül anélkül, hogy fizikai fájlokat kell létrehozni.