Invoering
Zip-bestanden zijn essentieel voor gegevensorganisatie en -compressie, maar hoe wijzig je de inhoud ervan programmatisch? De oplossing ligt in Aspose.Zip voor .NET, een robuuste bibliotheek die het bewerken van zip-bestanden met C# vereenvoudigt. In deze tutorial begeleiden we je stap voor stap bij het uitpakken, verwijderen en toevoegen van items aan zip-bestanden.
Vereisten
Voordat we beginnen, zorg ervoor dat u het volgende heeft:
-
Aspose.Zip voor .NET-bibliotheek: installeer de bibliotheek in uw project. U kunt deze downloaden. hier.
-
Documentmap: Stel een map in om uw zip-bestanden op te slaan. Vervangen
"Your Document Directory"
in de code met uw werkelijke pad.
Importeer noodzakelijke naamruimten
Begin met het importeren van de vereiste naamruimten:
using Aspose.Zip;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
Stap 1: Open het buitenste zipbestand
Begin met het openen van uw hoofd-zipbestand (buitenste zipbestand):
string dataDir = "Your Data Directory";
using (Archive outer = new Archive(dataDir + "outer.zip"))
{
// Ga verder met het identificeren van de interne postcodes
}
Stap 2: Identificeer de binnenste ritssluitingen
Identificeer vervolgens alle interne zip-bestanden en bereid u voor op het verwijderen ervan:
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);
// Interne items extraheren
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);
}
}
}
}
}
Stap 3: Verwijder interne archiefitems
Zodra u de gewenste items hebt verzameld, verwijdert u de binnenste zip-items:
foreach (ArchiveEntry e in entriesToDelete)
{
outer.DeleteEntry(e);
}
Stap 4: Gewijzigde vermeldingen toevoegen aan de buitenste postcode
Nu kunt u de nieuw uitgepakte items weer toevoegen aan uw externe zipbestand:
for (int i = 0; i < namesToInsert.Count; i++)
{
outer.CreateEntry(namesToInsert[i], contentToInsert[i]);
}
Stap 5: Sla het gewijzigde zipbestand op
Sla ten slotte uw wijzigingen op in een nieuw zip-bestand:
outer.Save(dataDir + "flatten.zip");
Conclusie
Aspose.Zip voor .NET biedt een krachtige en eenvoudige manier om zip-bestanden programmatisch te bewerken. Deze tutorial behandelde het uitpakken, verwijderen en toevoegen van items aan een zip-bestand, wat de veelzijdigheid van de bibliotheek illustreert. Ontdek verschillende scenario’s en verbeter je vaardigheden in bestandsbewerking!
Veelgestelde vragen
Kan ik Aspose.Zip voor .NET gebruiken met andere programmeertalen?
Aspose.Zip is primair ontworpen voor .NET-toepassingen, maar Aspose biedt vergelijkbare bibliotheken voor verschillende programmeertalen.
Is er een gratis proefversie beschikbaar voor Aspose.Zip voor .NET?
Ja, er is een gratis proefversie beschikbaar om te downloaden hier.
Hoe krijg ik ondersteuning voor Aspose.Zip voor .NET?
Bezoek de Aspose.Zip forum voor ondersteuning en discussies.
Kan ik een tijdelijke licentie voor Aspose.Zip voor .NET kopen?
Ja, u kunt een tijdelijke licentie verkrijgen hier.
Waar kan ik de documentatie voor Aspose.Zip voor .NET vinden?
De volledige documentatie is beschikbaar hier.