Maak een ZIP-bestand C#

In deze blogpost onderzoeken we hoe u ZIP-bestanden kunt maken in C# voor verschillende scenario’s. Of u nu een enkel bestand, meerdere bestanden of zelfs een hele map wilt comprimeren, u kunt snel een ZIP-archief maken vanuit uw .NET-toepassingen. Bovendien verken je ook het snelle proces om online en gratis een ZIP-bestand te maken.

Online gratis ZIP-bestand maken

Met deze gratis ZIP-bestandsmaker kunt u uw bestanden comprimeren en ordenen in één handig pakket. Bovendien kunt u ook de bestanden uit uw systeem kiezen of een online link gebruiken om toegang te krijgen tot de bestanden. U hoeft geen creditcardgegevens of een e-mailadres in te voeren om met dit hulpprogramma te werken.

ZIP-bestand maken – C# API-installatie

U kunt een ZIP-archief maken om meerdere bestanden in één bestand te comprimeren. Configureer eenvoudigweg Conholdate.Total voor .NET door het te openen via de sectie Releases of installeer het met de volgende NuGet-opdracht:

Install-Package Conholdate.Total 

Maak ZIP voor bestand in C#

In dit gedeelte worden verschillende benaderingen besproken voor het maken van een ZIP-archief voor het comprimeren van bestanden. Het bespreekt het comprimeren van een enkel bestand en meerdere bestanden in een enkele ZIP-map, afhankelijk van uw vereisten.

Maak een ZIP-bestand voor een enkel bestand in C#

Leer het stapsgewijze proces voor het maken van een ZIP-bestand voor één bestand met C#. De volgende stappen en het codefragment leiden u door het proces en leggen uit hoe u uw bestand efficiënt in een gecomprimeerd archief kunt verpakken.

  • Maak een exemplaar van de FileStream-klasse en geef de naam op voor het uitvoer-ZIP-bestand.
  • Geef het bestand op dat aan het archief moet worden toegevoegd.
  • Initialiseer een exemplaar van de klasse Archive.
  • Maak het uitvoer-ZIP-archief.

Het volgende codefragment laat zien hoe u een ZIP-archief maakt voor één bestand in C#:

using (FileStream zipFile = File.Open(dataDir + "CompressSingleFile_out.zip", FileMode.Create))
{
    //Bestand dat aan het archief moet worden toegevoegd
    using (FileStream source1 = File.Open(dataDir + "test.txt", FileMode.Open, FileAccess.Read))
    {
        using (var archive = new Archive(new ArchiveEntrySettings()))
        {
            archive.CreateEntry("test.txt", source1);

            archive.Save(zipFile);
        }
    }
}

Maak een ZIP-archief voor meerdere bestanden in C#

De volgende stappen laten zien hoe u een ZIP-map voor meerdere bestanden in C# maakt:

  • Geef de bronbestanden op die moeten worden gecomprimeerd, evenals de naam van het uitvoerbestand.
  • Maak vermeldingen voor de doelbestanden met behulp van de CreateEntry-methode.
  • Sla het uitvoer-ZIP-bestand op dat meerdere bestanden bevat.

De onderstaande voorbeeldcode laat zien hoe u een ZIP-archief voor meerdere bestanden in C# maakt:

using (FileStream zipFile = File.Open(dataDir + "CompressMultipleFiles_out.zip", FileMode.Create))
{
    using (FileStream source1 = File.Open(dataDir + "test.txt", FileMode.Open, FileAccess.Read))
    {
        using (FileStream source2 = File.Open(dataDir + "test2.txt", FileMode.Open, FileAccess.Read))
        {
            using (var archive = new Archive())
            {
                archive.CreateEntry("test.txt", source1);
                archive.CreateEntry("test1.txt", source2);
                archive.Save(zipFile, new ArchiveSaveOptions() { Encoding = Encoding.ASCII, ArchiveComment = "There are two poems from Canterbury corpus" });
            }
        }
    }
}

Maak ZIP voor map in C#

Soms moet u een hele map, inclusief alle bestanden daarin, in een ZIP-bestand verpakken. De onderstaande stappen vatten samen hoe u een ZIP-bestand voor een map in C# maakt:

  • Maak een FileStream-klasseobject en geef de naam van het uitvoer-ZIP-bestand op.
  • Maak een object van de klasse Archive.
  • Stel het pad naar de map in.
  • Maak en exporteer het uitvoer-ZIP-archief.

Het volgende codevoorbeeld laat zien hoe u een ZIP-archief maakt voor een map in C#:

using (FileStream zipFile = File.Open(dataDir + "CompressDirectory_out.zip", FileMode.Create))
{
    using (Archive archive = new Archive())
    {
        DirectoryInfo corpus = new DirectoryInfo(dataDir + "zipfolder");
        archive.CreateEntries(corpus);
        archive.Save(zipFile);
    }
}

Ontvang een gratis evaluatielicentie

U kunt een gratis tijdelijke licentie aanvragen om de API zonder enige beperking op zijn volledige capaciteit te evalueren.

Conholdate.Total voor .NET - Leermiddelen

U kunt de volgende bron raadplegen om de functies van de API verder te verkennen.

Opsommen

Het maken van ZIP-bestanden in C# opent een wereld aan mogelijkheden voor efficiënt gegevensbeheer en delen. Door de details te leren die in deze blogpost worden gedeeld, kunt u eenvoudig bestandscompressiemogelijkheden aan uw toepassingen toevoegen. Hiermee kunt u ruimte besparen, gegevens eenvoudig verzenden en uw workflows stroomlijnen. Als u vragen heeft, kunt u ons schrijven op het gratis ondersteuningsforum.

Zie ook