Vytvoření 7Zip archivu v C#

V předchozím příspěvku jsme prozkoumali různé metody vytváření ZIP archivů pomocí C#. Tento článek rozšíří toto znalostní spektrum zaměřením na formát 7z, který je založen na architektuře s otevřeným zdrojovým kódem a nabízí vysoký poměr komprese. Zvlášť stojí za zmínku, že 7z podporuje 256bitové AES šifrování, což vám umožňuje zabezpečit nejen soubory, ale také jejich názvy.

V této příručce se naučíte, jak vytvářet 7z (7-Zip) archivy programově pomocí C#. Pokryjeme:

Všechny příklady a úryvky kódu jsou založeny na Aspose.ZIP pro .NET API. Ujistěte se, že máte API nainstalováno pomocí jedné z následujících metod:

Vytvoření 7z (7-Zip) archivu pomocí C#

Můžete komprimovat soubory do 7z archivu ve dvou hlavních scénářích: při práci s jedním souborem nebo více soubory. Zde je návod, jak zvládnout obě situace.

Vytvoření 7z archivu s jedním záznamem

Chcete-li vytvořit 7z archiv s jedním souborem, postupujte podle těchto kroků:

  1. Otevřete nový FileStream pro vytvoření 7z souboru.
  2. Vytvořte instanci třídy SevenZipArchive.
  3. Přidejte soubor do archivu pomocí metody SevenZipArchive.CreateEntry(String, String, Boolean, SevenZipEntrySettings).
  4. Uložte archiv pomocí metody SevenZipArchive.Save(Stream).

Zde je příklad C# 7z archivu demonstrující výše uvedené kroky:

Vytvoření 7z archivu s více záznamy

Pokud potřebujete komprimovat více souborů, můžete je umístit do složky a předat cestu k této složce metodě SevenZipArchive.CreateEntries(). Postupujte podle těchto kroků:

  1. Vytvořte instanci třídy SevenZipArchive.
  2. Předávejte cestu ke složce metodě SevenZipArchive.CreateEntries(String, Boolean).
  3. Zavolejte metodu SevenZipArchive.Save(String).

Zde je návod, jak vytvořit 7z archiv s více záznamy pomocí C#:

Vytvoření AES šifrovaného 7z archivu pomocí C#

Formát 7z podporuje AES šifrování pro zvýšenou bezpečnost. Chcete-li šifrovat 7z soubor, použijte třídu SevenZipAESEncryptionSettings. Níže je ukázka kódu, která demonstruje, jak vytvořit AES šifrovaný 7z archiv pomocí C#:

Nastavení různých hesel pro 7z záznamy pomocí C#

Formát 7z také umožňuje přiřadit unikátní heslo pro každý záznam souboru. Pokud komprimujete více souborů, můžete pro každý záznam specifikovat různá hesla. Zde je návod, jak to udělat:

  1. Vytvořte nový FileStream pro soubor 7z archivu.
  2. Získejte každý záznam souboru pomocí třídy FileInfo.
  3. Vytvořte instanci třídy SevenZipArchive.
  4. Přidejte záznamy do 7z archivu pomocí metody SevenZipArchive.CreateEntry(String, FileInfo, Boolean, SevenZipEntrySettings).
  5. Uložte archiv pomocí metody SevenZipArchive.Save(Stream).

Podívejte se na následující ukázku kódu, abyste viděli, jak nastavit různá hesla pro každý záznam v 7z archivu:

Závěr

V tomto článku jsme pokryli, jak vytvářet 7z archivy programově pomocí C#. Také jsme prozkoumali, jak implementovat AES šifrování pro zvýšenou bezpečnost a jak nastavit unikátní hesla pro každý záznam souboru. Pro další čtení o kompresi a dekompresi souborů můžete zkontrolovat Aspose.ZIP dokumentaci.

Související články

Využitím Aspose Pluginu pro .NET můžete snadno integrovat .NET 7-Zip kompresi do svých aplikací, zefektivnit své procesy správy souborů a vylepšit schopnosti vašeho softwaru. Za pouhých 99 USD můžete odemknout silné funkce, které podporují zpracování velkých souborů, asynchronní kompresi a další.