In deze blogpost begeleiden we u door het proces van het converteren van een ZIP-archief naar een 7z-formaat met behulp van C#. Het 7z-formaat staat bekend om zijn hoge compressieverhouding en wordt veel gebruikt voor het verkleinen van de bestandsgrootte, waardoor het ideaal is voor efficiënte opslag en overdracht. We laten zien hoe u de conversie kunt implementeren met behulp van een stapsgewijze aanpak.
Waarom ZIP naar 7z converteren?
Er zijn verschillende redenen om ZIP-bestanden naar 7z te converteren:
Verklein bestandsgroottes: het 7z-formaat biedt superieure compressie vergeleken met ZIP.
Verbeter de prestaties: Kleinere bestandsgroottes zorgen voor snellere uploads, downloads en overdrachten.
Hogere compressieverhouding: het 7z-formaat comprimeert bestanden efficiënter, waardoor de bestandsgrootte wordt verkleind en de opslag wordt geoptimaliseerd.
ZIP naar 7z Archief Converter - C# API-configuratie
Om ZIP-archieven naar 7z-formaat te converteren, moet u Conholdate.Total voor .NET installeren met behulp van de volgende NuGet-installatieopdracht in Microsoft Visual Studio IDE:
PM> NuGet\Install-Package Conholdate.Total
Converteer ZIP naar 7z in C#
U kunt de onderstaande stappen volgen om ZIP naar 7z te converteren in C#:
Archive: Dit vertegenwoordigt het ZIP-bestand dat u wilt converteren. De klasse Archive wordt gebruikt om het ZIP-bestand te openen en te lezen.
SevenZipArchive: Deze klasse wordt gebruikt om een 7z-archief te maken en op te slaan.
SevenZipEntrySettings: Geeft de compressie-instellingen voor het 7z-formaat op. In dit geval gebruiken we het LZMA2-compressiealgoritme voor maximale compressie-efficiëntie.
MemoryStream: De bestandsgegevens worden met behulp van een stream naar het geheugen gekopieerd en elk item uit het ZIP-bestand wordt toegevoegd aan het nieuwe 7z-archief.
De onderstaande voorbeeldcode laat zien hoe u ZIP naar 7z converteert in C#:
using (Archive source = new Archive("source.zip"))
{
using (var archive = new Aspose.Zip.SevenZip.SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings())))
{
foreach (ArchiveEntry entry in source.Entries)
{
if (!entry.IsDirectory)
{
MemoryStream mem = new MemoryStream();
entry.Open().CopyTo(mem);
mem.Seek(0, SeekOrigin.Begin);
archive.CreateEntry(entry.Name, mem);
}
}
archive.Save("result.7z");
}
}
Gratis evaluatielicentie
U kunt een gratis tijdelijke licentie krijgen om verschillende archiefconversies of -manipulaties aan uw kant te evalueren.
Conclusie
Door de hierboven beschreven stappen te volgen, kunt u eenvoudig een ZIP-bestand converteren naar 7z-formaat in C#. De hogere compressie-efficiëntie van het 7z-formaat maakt het een uitstekende keuze voor het verkleinen van bestandsgroottes, wat helpt de prestaties te verbeteren bij het verwerken van grote archieven. Mocht u onduidelijkheden willen bespreken, neem dan contact met ons op via forum.
Veelgestelde vragen
Kan ik het 7z-archief met een wachtwoord beveiligen?
Ja, het 7z-formaat ondersteunt geavanceerde encryptie, zodat u uw archief met een wachtwoord kunt beveiligen.
Kan ik meerdere ZIP-bestanden in één keer naar 7Z converteren?
Ja, u kunt door meerdere ZIP-bestanden heen lussen en dezelfde logica voor de conversie toepassen.
Moet ik de 7-Zip-software op mijn computer installeren?
Nee, Conholdate.Total voor .NET bevat alle benodigde componenten om met 7z te werken zonder extra software.