Vytvoření ZIP v C#

Úvod do ZIP archivů

ZIP archivy jsou nezbytné pro kompresi a sloučení jednoho nebo více souborů či složek do jediného kontejneru. Tento formát nejenže snižuje velikost souboru pro ukládání a přenos, ale také uchovává informace o metadatech, což usnadňuje správu souborů. ZIP archivy se široce používají jak v desktopových, tak ve webových aplikacích pro úkoly jako je nahrávání, stahování, sdílení a zabezpečení souborů pomocí šifrování.

V tomto článku prozkoumáme různé metody programatického vytváření ZIP archivů v C#. Naučíte se, jak:

C# ZIP Knihovna

Aspose.ZIP pro .NET je robustní API navržené pro zipování a rozbalování souborů a složek v rámci .NET aplikací. Nabízí funkce jako AES šifrování pro zabezpečení vašich souborů v ZIP archivech. API můžete snadno nainstalovat z NuGet nebo stáhnout binární soubory z sekce Downloads.

Vytvoření ZIP archivu v C#

Pro kompresi souboru do ZIP archivu postupujte podle těchto kroků:

  1. Vytvořte FileStream objekt pro výstupní ZIP archiv.
  2. Otevřete zdrojový soubor pomocí objektu FileStream.
  3. Inicializujte Archive třídu.
  4. Přidejte soubor do archivu pomocí metody Archive.CreateEntry(string, FileStream).
  5. Uložte ZIP archiv pomocí metody Archive.Save(FileStream).

Zde je ukázka kódu, která demonstruje, jak přidat soubor do ZIP archivu pomocí C#:

Přidání více souborů do ZIP archivu v C#

Pro přidání více souborů do ZIP archivu můžete zvolit jednu z následujících metod:

Použití FileStream

Využijte třídu FileStream pro přidání více souborů do ZIP archivu pomocí metody Archive.CreateEntry(String, FileStream). Zde je, jak na to:

Použití FileInfo

Alternativně můžete použít třídu FileInfo pro přidání souborů. Tato metoda načte soubory pomocí třídy FileInfo a přidá je do ZIP archivu pomocí metody Archive.CreateEntry(String, FileInfo). Viz příklad níže:

Použití cesty k souboru

Můžete také přidat soubory přímo poskytnutím jejich cest k metodě Archive.CreateEntry(String name, String path, Boolean openImmediately, ArchiveEntrySettings newEntrySettings). Zde je, jak na to:

Přidání složek do ZIP archivu v C#

Přidání složky do ZIP archivu může být pohodlný způsob, jak zahrnout více souborů. Pro ZIPování složky v C# postupujte podle těchto kroků:

  1. Vytvořte FileStream objekt pro výstupní ZIP archiv.
  2. Inicializujte Archive třídu.
  3. Použijte třídu DirectoryInfo pro určení složky, kterou chcete zipovat.
  4. Přidejte složku do ZIP pomocí metody Archive.CreateEntries(DirectoryInfo).
  5. Uložte ZIP archiv pomocí metody Archive.Save(FileStream).

Zde je ukázka kódu, která demonstruje, jak přidat složku do ZIP archivu v C#:

Vytvoření ZIP chráněného heslem pomocí ZipCrypto v C#

Pro zvýšení bezpečnosti můžete vytvořit ZIP archivy chráněné heslem pomocí šifrování ZipCrypto. Toho dosáhnete použitím třídy ArchiveEntrySettings v konstruktoru Archive, která vám umožňuje specifikovat typ šifrování.

Zde je příklad, jak vytvořit ZIP archiv chráněný heslem pomocí ZipCrypto v C#:

Vytvoření ZIP chráněného heslem s AES šifrováním

Knihovna Aspose.ZIP pro .NET také podporuje AES šifrování pro zabezpečení ZIP archivů. Můžete si vybrat z následujících metod AES šifrování:

  • AES128
  • AES192
  • AES256

Pro aplikaci AES šifrování použijte třídu AesEcryptionSettings. Zde je, jak vytvořit ZIP chráněný heslem s AES šifrováním v C#:

Nastavení paralelního režimu komprese

V případech zahrnujících více položek můžete nakonfigurovat API pro paralelní kompresi pomocí třídy ParallelOptions. Aspose.ZIP pro .NET poskytuje několik režimů paralelní komprese:

  • Nikdy - Nekompresovat paralelně.
  • Vždy - Vždy komprimovat paralelně (buďte opatrní na problémy s nedostatkem paměti).
  • Automaticky - Automaticky rozhodnout, zda použít paralelní kompresi na základě položek.

Zde je příklad, který demonstruje, jak nastavit paralelní režim komprese při zipování více souborů:

Další informace o C# .NET ZIP knihovně

Prozkoumejte naši C# ZIP API s následujícími zdroji:

Vyzkoušejte ZIP archivy online

Prozkoumejte naši bezplatnou online aplikaci, založenou na Aspose.ZIP pro .NET, pro snadnou kompresi souborů do ZIP archivů.

Závěr

V tomto článku jste se naučili, jak programaticky vytvářet ZIP archivy v C#. Poskytnuté ukázky kódu demonstrují, jak přidávat soubory a složky do ZIP archivů. Dále jsme pokryli, jak vytvořit ZIP archivy chráněné heslem pomocí metod šifrování ZipCrypto a AES. Také jsme diskutovali o paralelní kompresi pro efektivní zpracování velkých souborů. Pokud máte jakékoli dotazy nebo potřebujete další pomoc, neváhejte nás kontaktovat prostřednictvím našeho fóra.

Viz také

Unrar nebo extrahovat soubory pomocí C#Rozbalení souborů v ZIP archivech pomocí C#Vytvoření 7z (7-Zip) archivů v C# .NET
Otevření nebo extrakce 7z (7zip) souboru v C# .NETVytvoření a extrakce GZip archivů pomocí C#Převod RAR souborů na ZIP archiv v C#
Převod ZIP archivů na TAR v C#Vytvoření plochého ZIP archivu v C#Vytvoření spustitelného samorozbalovacího archivu v C#
Vytvoření TAR.GZ a TAR.XZ souborů v C#Smazání souborů v ZIP archivu v C#Extrahování vnořených ZIP archivů v C#
Sloučení více ZIP nebo TAR archivů v C#Jak vytvořit ZIP souboryExtrahovat 7z online