Skapa ZIP i C#

Introduktion till ZIP-arkiv i C#

ZIP-arkiv är avgörande för att komprimera och organisera filer och mappar i en enda behållare. De minskar inte bara filstorlekar för effektiv lagring och överföring utan behåller också metadata och kan krypteras för säkerhetsändamål. Denna artikel kommer att vägleda dig genom olika metoder för att programmässigt skapa ZIP-filer i C#, som omfattar operationer som att lägga till filer och mappar, skapa lösenordsskyddade arkiv och tillämpa AES-kryptering.

Vad Du Kommer Att Lära Dig

I denna artikel kommer du att upptäcka hur du:

C# ZIP-bibliotek

Aspose.ZIP för .NET-biblioteket är ett kraftfullt verktyg för att hantera ZIP-filarbeten inom .NET-applikationer. Det förenklar processen att zippa eller packa upp filer och mappar och stöder AES-kryptering för ökad säkerhet. Du kan enkelt installera detta bibliotek från NuGet eller ladda ner binärerna från Nedladdningar-sektionen.

Skapa ett ZIP-arkiv i C#

För att programmässigt skapa en ZIP-fil i C#, följ dessa steg:

  1. Skapa ett FileStream objekt för det utgående ZIP-arkivet.
  2. Öppna källfilen som ett FileStream objekt.
  3. Instansiera Archive klassen.
  4. Lägg till filen i arkivet med Archive.CreateEntry(string, FileStream) metoden.
  5. Spara ZIP-arkivet med Archive.Save(FileStream) metoden.

Här är ett kodexempel som demonstrerar hur man lägger till en fil i ett ZIP-arkiv i C#:

Lägg till flera filer i ett ZIP-arkiv i C#

När du behöver lägga till flera filer i ett ZIP-arkiv kan du använda flera tillvägagångssätt:

Använda FileStream för att Lägga till Flera Filer

Denna metod använder FileStream klassen för att lägga till filer i ZIP-arkivet via Archive.CreateEntry(String, FileStream) metoden. Så här kan du göra det:

Använda FileInfo för Flera Filer

Alternativt kan du använda FileInfo klassen för att ladda filer och lägga till dem i ZIP-arkivet med Archive.CreateEntry(String, FileInfo) metoden. Nedan är ett kodexempel:

Använda Filvägar

Du kan också direkt ange filvägarna till Archive.CreateEntry(String name, String path, Boolean openImmediately, ArchiveEntrySettings newEntrySettings) metoden. Här är ett exempel:

Lägg till mappar i ett ZIP-arkiv i C#

För att lägga till en mapp i ett ZIP-arkiv i C#, kan du följa dessa steg:

  1. Skapa ett FileStream objekt för det utgående ZIP-arkivet.
  2. Instansiera Archive klassen.
  3. Använd DirectoryInfo klassen för att specificera mappen du vill zippa.
  4. Lägg till mappen i ZIP med Archive.CreateEntries(DirectoryInfo) metoden.
  5. Spara ZIP-arkivet med Archive.Save(FileStream) metoden.

Här är ett kodexempel som illustrerar hur man lägger till en mapp i en ZIP-fil:

Skapa ett lösenordsskyddat ZIP med ZipCrypto i C#

För att säkra dina ZIP-arkiv kan du tillämpa lösenordsskydd med ZipCrypto-kryptering. Detta uppnås genom att använda ArchiveEntrySettings klassen i konstruktorn av Archive, som accepterar krypteringstypen som parameter.

Här är hur du skapar ett lösenordsskyddat ZIP-arkiv med ZipCrypto i C#:

Skapa lösenordsskyddat ZIP med AES-kryptering

Aspose.ZIP för .NET-biblioteket stöder också AES-kryptering för att skydda ZIP-arkiv. Du kan välja mellan följande AES-krypteringsmetoder:

  • AES128
  • AES192
  • AES256

För att tillämpa AES-kryptering, använd AesEcryptionSettings klassen. Nedan är ett kodexempel som demonstrerar hur man skapar ett lösenordsskyddat ZIP med AES-kryptering i C#:

Ställ in parallell komprimeringsläge

För effektiv hantering av flera poster kan du konfigurera API:et för parallell komprimering med hjälp av ParallelOptions klassen. De tillgängliga parallella komprimeringslägena är:

  • Aldrig - Komprimera inte parallellt.
  • Alltid - Komprimera parallellt (var försiktig med potentiella minnesproblem).
  • Automatiskt - Besluta automatiskt om parallell komprimering ska användas baserat på posterna.

Här är hur du ställer in parallell komprimeringsläge medan du zippas flera filer med Aspose C# ZIP-biblioteket:

Lär dig mer om C# .NET ZIP-bibliotek

För att fördjupa din förståelse av C# ZIP-biblioteket, utforska följande resurser:

Prova vårt online ZIP-komprimeringsverktyg

Du kan också experimentera med vår gratis online-applikation baserad på Aspose.ZIP för .NET för att enkelt komprimera filer till ZIP-arkiv.

Slutsats

I denna artikel har du lärt dig hur man skapar ZIP-arkiv programmässigt i C#. De angivna kodexemplen demonstrerar hur man lägger till filer och mappar i ZIP-arkiv, skapar lösenordsskyddade ZIP-filer med ZipCrypto och AES-krypteringsmetoder, samt konfigurerar parallell komprimering. Om du har några frågor eller behöver ytterligare hjälp, tveka inte att kontakta oss via vårt forum.

Se Även

Unrar eller extrahera filer med C#Packa upp filer i ZIP-arkiv med C#Skapa 7z (7-Zip) arkiv i C# .NET
Öppna eller extrahera 7z (7zip) fil i C# .NETSkapa och extrahera GZip-arkiv med C#Konvertera RAR-filer till ZIP-arkiv i C#
Konvertera ZIP-arkiv till TAR i C#Skapa ett platt ZIP-arkiv i C#Skapa körbart självextraherande arkiv i C#
Skapa TAR.GZ och TAR.XZ-filer i C#Ta bort filer i ett ZIP-arkiv i C#Extrahera nästlade ZIP-arkiv i C#
Slå samman flera ZIP- eller TAR-arkiv i C#Hur man skapar ZIP-filerExtrahera 7z online