
C# Archive: Naučte se využívat třídu Archive pro komplexní zpracování ZIP.
ZIP archivy jsou nezbytné pro komprimaci a organizaci souborů a složek do jednoho, snadno spravovatelného kontejneru. Nejenže snižují velikost souborů pro efektivní ukládání a přenos, ale také zachovávají metadata a mohou být šifrovány pro zvýšenou bezpečnost. V tomto článku prozkoumáme různé metody k programově vytvořit ZIP soubory v C#, včetně toho, jak přidávat soubory a složky, vytvářet archivy chráněné heslem a použít AES šifrování.
Co se naučíte
V tomto článku se dozvíte, jak:
- Vytvoření ZIP archivu pomocí C#
- Přidání více souborů do ZIP archivu
- Přidání souborů do ZIP archivu
- Vytvořte archiv chráněný heslem pomocí ZipCrypto
- Šifrování archivu pomocí AES
- Paralelní kompresní režim
C# ZIP knihovna
Ten Aspose.ZIP for .NET Knihovna je výkonný nástroj pro manipulaci s operacemi souborů ZIP v aplikacích .NET, což usnadňuje zip nebo unzip soubory a složky. Tato knihovna je zvláště účinná pro zpracování velkých souborů v C# .NET ZIP archivy a podporuje šifrování AES pro zvýšenou bezpečnost. Tuto knihovnu můžete snadno nainstalovat z NuGet nebo stáhněte binární soubory z Stahování sekce.
Vytvořte si archiv v C#
Do programaticky vytvořit soubor ZIP v C#, postupujte podle těchto kroků:
- Vytvořte FileStream objekt pro výstupní archiv ZIP.
- Otevřete zdrojový soubor jako a FileStream objekt.
- Instancovat the Archiv třída.
- Přidejte soubor do archivu pomocí. Archive.CreateEntry(string, FileStream) metoda.
- Uložte archiv ZIP pomocí. Archive.Save(FileStream) metoda.
Zde je vzorový kód, který ukazuje, jak přidat soubor do archivu ZIP pomocí C#:
using Aspose.Zip;
using Aspose.Zip.Saving;
// Create FileStream for output ZIP archive
using (FileStream zipFile = File.Open("compress_directory.zip", FileMode.Create))
{
using (Archive archive = new Archive(new ArchiveEntrySettings(null, new AesEcryptionSettings("p@s$", EncryptionMethod.AES128))))
{
// Add folder to archive
DirectoryInfo corpus = new DirectoryInfo("CanterburyCorpus");
archive.CreateEntries(corpus);
// Create ZIP archive
archive.Save(zipFile);
}
}
Přidat více souborů do archivu ZIP v C#
Když potřebujete. přidat více souborů do archivu ZIP, lze zvolit několik přístupů. Zde jsou metody, které můžete použít s C# pro zipování více souborů:
Použití FileStream pro přidání více souborů
Tato metoda využívá FileStream třída pro přidání souborů do archivu ZIP pomocí Archive.CreateEntry(String, FileStream) metoda. Zde je, jak to můžete udělat:
using Aspose.Zip;
using Aspose.Zip.Saving;
// Create FileStream for output ZIP archive
using (FileStream zipFile = File.Open("compress_directory.zip", FileMode.Create))
{
using (Archive archive = new Archive(new ArchiveEntrySettings(null, new AesEcryptionSettings("p@s$", EncryptionMethod.AES128))))
{
// Add folder to archive
DirectoryInfo corpus = new DirectoryInfo("CanterburyCorpus");
archive.CreateEntries(corpus);
// Create ZIP archive
archive.Save(zipFile);
}
}
Použití FileInfo pro více souborů
Alternativně můžete využít. FileInfo třída pro načtení souborů a jejich přidání do archivu ZIP pomocí Archive.CreateEntry(String, FileInfo) metoda. Níže je ukázkový kód:
Použití souboru CEST
Můžete také přímo zadat cesty k souborům do. Archive.CreateEntry(String name, String path, Boolean openImmediately, ArchiveEntrySettings newEntrySettings) metoda. Zde je příklad:
Přidat složky do archivu ZIP v C#
Do přidat složku do archivu ZIP v C#, postupujte podle těchto kroků:
- Vytvořte FileStream objekt pro výstupní archiv ZIP.
- Instancovat the Archiv třída.
- Použijte DirectoryInfo třída pro určení složky, kterou chcete zipovat.
- Přidejte složku do ZIP pomocí. Archive.CreateEntries(DirectoryInfo) metoda.
- Uložte archiv ZIP pomocí. Archive.Save(FileStream) metoda.
Zde je vzorový kód, který ilustruje, jak přidat složku do souboru ZIP:
Vytvořte si heslo chráněné ZIP pomocí ZipCrypto v C#
Chcete-li zabezpečit své ZIP archivy, můžete použít ochranu heslem pomocí šifrování ZipCrypto. To se provádí využitím. ArchiveEntrySettings třída v konstruktoru Archiv, který přijímá typ šifrování jako parametr. Můžete použít C# Zip archiv heslo metoda pro snadnou implementaci tohoto.
Zde je příklad toho, jak vytvořit archiv ZIP chráněný heslem pomocí ZipCrypto v C#:
Vytvořte heslo chráněné ZIP s šifrováním AES
Ten Aspose.ZIP for .NET knihovna také podporuje šifrování AES pro ochranu archivů ZIP. Můžete si vybrat z následujících metod šifrování AES:
- AES128
- AES192
- AES256
Pro použití šifrování AES použijte the AesEcryptionSettings třída. Níže je ukázkový kód, který demonstruje, jak vytvořit heslem chráněný ZIP s šifrováním AES v C#, včetně podpory pro C# heslo k souboru Zip funkce:
Nastavení režimu paralelní komprese
Pro efektivní zpracování více položek můžete nakonfigurovat API pro paralelní kompresi pomocí the ParallelOptions třída. Dostupné režimy paralelní komprese jsou:
- Nikdy - Nekomprimujte paralelně.
- Vždy - Komprimujte paralelně (dávejte pozor na možné problémy s pamětí).
- Auto - Automaticky rozhodnout, zda použít paralelní kompresi na základě položek.
Zde je návod, jak nastavit režim paralelního komprese při zipování více souborů pomocí knihovny Aspose C# ZIP:
using Aspose.Zip;
using Aspose.Zip.Saving;
// For complete examples and data files, please go to https://github.com/aspose-zip/Aspose.ZIP-for-.NET
string dataDir = "";
using (FileStream zipFile = File.Open(dataDir + "UsingParallelismToCompressFiles_out.zip", FileMode.Create))
{
using (FileStream source1 = File.Open(dataDir + "alice29.txt", FileMode.Open, FileAccess.Read))
{
using (FileStream source2 = File.Open(dataDir + "asyoulik.txt", FileMode.Open, FileAccess.Read))
{
using (var archive = new Archive())
{
archive.CreateEntry("alice29.txt", source1);
archive.CreateEntry("asyoulik.txt", source2);
//Define the parallelism criterion
var parallelOptions = new Aspose.Zip.Saving.ParallelOptions
{
ParallelCompressInMemory = ParallelCompressionMode.Always
};
archive.Save(zipFile,
new ArchiveSaveOptions()
{
ParallelOptions = parallelOptions,
Encoding = Encoding.ASCII,
ArchiveComment = "There are two poems from Canterbury corpus"
});
}
}
}
}
Zjistěte více o C# .NET ZIP Library
Pro prohloubení vašeho porozumění. C# .NET ZIP knihovna, prozkoumejte následující zdroje:
Vyzkoušejte náš online nástroj pro kompresi zip
Můžete také experimentovat s naším bezplatná online aplikace na základě Aspose.ZIP pro .NET k snadnému komprimování souborů do archivů ZIP.
Závěr
V tomto článku jste se naučili, jak vytvořit ZIP archivy programově v C#. Poskytnuté ukázky kódu ukazují, jak přidávat soubory a složky do archivů ZIP, vytvářet soubory ZIP chráněné heslem pomocí metod šifrování ZipCrypto a AES a konfigurovat paralelní kompresi. Navíc nyní rozumíte tomu, jak vytvořte ZIP soubory v C#, včetně toho, jak zipovat soubor, vytvořte soubor ZIP v C#, a přidat soubory do ZIP archivy. Pokud máte jakékoli dotazy nebo potřebujete další pomoc, neváhejte nás kontaktovat prostřednictvím našeho forum.
Také se
Další zdroje
Pokud hledáte více informací o tom, jak vytvořte ZIP soubory v C#, zvažte podívat se na:
- Jak zipsovat soubory v .NET s C#
- C# Zip soubor s heslem
- C# Vytvoření Zip souboru z více souborů
- C# ZIP knihovna
- Zde je vzorový kód, který ukazuje, jak přidat soubor do archivu ZIP pomocí C#:
Začlenění různých metod k vytvořte ZIP soubory v C#, například .NET jádro vytvořit ZIP soubor, C# Vytvořit ZIP soubor programově, a C# Přidat soubory do ZIP, může výrazně zvýšit efektivitu vašeho vývoje a schopnosti zpracování dat.
Můžete také prozkoumat C# příklad ZIP souboru abyste viděli praktickou implementaci těchto metod, což dále prohloubí vaše pochopení toho, jak zip soubory v .NET pomocí C#.