Skapa 7Zip-arkiv i C#

I ett tidigare inlägg utforskade vi olika metoder för att skapa ZIP arkiv med C#. Denna artikel kommer att bygga vidare på den kunskapen genom att fokusera på 7z-formatet, som baseras på en öppen källkodsarkitektur och erbjuder en hög kompressionsgrad. Noterbart är att 7z stöder 256-bitars AES-kryptering, vilket gör att du kan skydda inte bara filerna utan också deras namn.

I denna guide kommer du att lära dig hur du skapar 7z (7-Zip) arkiv programmatisk med C#. Vi kommer att täcka:

Alla exempel och kodsnuttar baseras på Aspose.ZIP för .NET API. Se till att du har API:et installerat med en av följande metoder:

Skapa 7z (7-Zip) arkiv med C#

Du kan komprimera filer till ett 7z-arkiv i två huvudsakliga scenarier: när du hanterar en enskild fil eller flera filer. Här är hur du hanterar båda situationerna.

Skapa 7z arkiv med en enskild post

För att skapa ett 7z-arkiv med en enskild fil, följ dessa steg:

  1. Öppna en ny FileStream för att skapa en 7z-fil.
  2. Skapa en instans av SevenZipArchive klassen.
  3. Lägg till filen i arkivet med metoden SevenZipArchive.CreateEntry(String, String, Boolean, SevenZipEntrySettings).
  4. Spara arkivet med metoden SevenZipArchive.Save(Stream).

Här är ett C# 7z arkiv exempel som demonstrerar ovanstående steg:

Skapa 7z arkiv med flera poster

Om du behöver komprimera flera filer kan du placera dem i en mapp och skicka mappens sökväg till metoden SevenZipArchive.CreateEntries(). Följ dessa steg:

  1. Skapa en instans av SevenZipArchive klassen.
  2. Skicka mappens sökväg till metoden SevenZipArchive.CreateEntries(String, Boolean).
  3. Anropa metoden SevenZipArchive.Save(String).

Här är hur du skapar ett 7z-arkiv med flera poster med C#:

Skapa ett AES-krypterat 7z arkiv med C#

7z-formatet stöder AES-kryptering för ökad säkerhet. För att kryptera en 7z-fil, använd klassen SevenZipAESEncryptionSettings. Nedan följer ett kodexempel som visar hur man skapar ett AES-krypterat 7z-arkiv med C#:

Ställa in olika lösenord för 7z-poster med C#

7z-formatet tillåter dig också att tilldela ett unikt lösenord för varje filpost. Om du komprimerar flera filer kan du specificera olika lösenord för varje. Här är hur du gör det:

  1. Skapa en ny FileStream för 7z-arkivfilen.
  2. Åtkomst till varje filpost med klassen FileInfo.
  3. Skapa en instans av SevenZipArchive klassen.
  4. Lägg till poster i 7z-arkivet med metoden SevenZipArchive.CreateEntry(String, FileInfo, Boolean, SevenZipEntrySettings).
  5. Spara arkivet med metoden SevenZipArchive.Save(Stream).

Kolla in följande kodexempel för att se hur man ställer in olika lösenord för varje post i ett 7z-arkiv:

Slutsats

I denna artikel har vi täckt hur man skapar 7z-arkiv programmatisk med C#. Vi har också utforskat hur man implementerar AES-kryptering för ökad säkerhet och hur man ställer in unika lösenord för varje filpost. För ytterligare läsning om filkomprimering och dekomprimering kan du kolla in Aspose.ZIP dokumentationen.

Relaterade artiklar

Genom att utnyttja Aspose Plugin för .NET kan du enkelt integrera .NET 7-Zip kompression i dina applikationer, strömlinjeforma dina filhanteringsprocesser och förbättra din mjukvaras kapabiliteter. För endast $99 kan du låsa upp kraftfulla funktioner som stöder hantering av stora filer, asynkron komprimering och mer.