Bevezetés
A zip fájlok létfontosságúak az adatok rendszerezéséhez és tömörítéséhez, de hogyan módosítható a tartalmuk programozottan? A megoldás az Aspose.Zip for .NET-ben rejlik, egy robusztus könyvtárban, amely leegyszerűsíti a zip fájlok kezelését C#-ban. Ebben az oktatóanyagban lépésről lépésre végigvezetünk a zip fájlok kibontásán, törlésének és bejegyzések hozzáadásának folyamatán.
Előfeltételek
Mielőtt belevágnánk, győződjünk meg róla, hogy a következőkkel rendelkezünk:
-
Aspose.Zip .NET könyvtárhoz: Telepítse a könyvtárat a projektjébe. Letöltheti itt.
-
Dokumentumkönyvtár: Állítson be egy könyvtárat a zip fájlok tárolásához. Csere
"Your Document Directory"
a kódban a tényleges elérési úttal.
Szükséges névterek importálása
Kezdje a szükséges névterek importálásával:
using Aspose.Zip;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
1. lépés: Nyissa meg a külső zip fájlt
Kezdésként nyisd meg a fő zip fájlt (külső zip):
string dataDir = "Your Data Directory";
using (Archive outer = new Archive(dataDir + "outer.zip"))
{
// Folytassa a belső irányítószám-bejegyzések azonosításával
}
2. lépés: A belső irányítószám-bejegyzések azonosítása
Ezután azonosítsa és készüljön fel a belső zip fájlok törlésére:
List<ArchiveEntry> entriesToDelete = new List<ArchiveEntry>();
List<string> namesToInsert = new List<string>();
List<MemoryStream> contentToInsert = new List<MemoryStream>();
foreach (ArchiveEntry entry in outer.Entries)
{
if (entry.Name.EndsWith(".zip", StringComparison.InvariantCultureIgnoreCase))
{
entriesToDelete.Add(entry);
using (MemoryStream innerCompressed = new MemoryStream())
{
entry.Open().CopyTo(innerCompressed);
// Belső bejegyzések kinyerése
using (Archive inner = new Archive(innerCompressed))
{
foreach (ArchiveEntry ie in inner.Entries)
{
namesToInsert.Add(ie.Name);
MemoryStream content = new MemoryStream();
ie.Open().CopyTo(content);
contentToInsert.Add(content);
}
}
}
}
}
3. lépés: Belső archívumbejegyzések törlése
Miután összegyűjtötted a szükséges bejegyzéseket, töröld a belső zip bejegyzéseket:
foreach (ArchiveEntry e in entriesToDelete)
{
outer.DeleteEntry(e);
}
4. lépés: Módosított bejegyzések hozzáadása a külső irányítószámhoz
Most már visszahelyezheti az újonnan kibontott bejegyzéseket a külső zip fájlba:
for (int i = 0; i < namesToInsert.Count; i++)
{
outer.CreateEntry(namesToInsert[i], contentToInsert[i]);
}
5. lépés: Mentse el a módosított zip fájlt
Végül mentse el a módosításokat egy új zip fájlba:
outer.Save(dataDir + "flatten.zip");
Következtetés
Az Aspose.Zip for .NET hatékony és egyszerű módszert kínál a zip fájlok programozott kezelésére. Ez az oktatóanyag a zip fájlok kibontását, törlését és bejegyzések hozzáadását ismertette, bemutatva a könyvtár sokoldalúságát. Fedezz fel különböző forgatókönyveket, és fejleszd fájlkezelési készségeidet!
GYIK
Használhatom az Aspose.Zip for .NET fájlt más programozási nyelvekkel?
Az Aspose.Zip elsősorban .NET alkalmazásokhoz készült, de az Aspose hasonló könyvtárakat kínál különböző programozási nyelvekhez.
Van ingyenes próbaverzió az Aspose.Zip for .NET-hez?
Igen, letölthető egy ingyenes próbaverzió itt.
Hogyan kaphatok támogatást az Aspose.Zip for .NET fájlhoz?
Látogassa meg a Aspose.Zip fórum támogatásért és megbeszélésekért.
Vásárolhatok ideiglenes licencet az Aspose.Zip for .NET fájlhoz?
Igen, igényelhet ideiglenes jogosítványt itt.
Hol találom az Aspose.Zip for .NET dokumentációját?
A teljes dokumentáció elérhető itt.