
Wprowadzenie do archiwów ZIP
Archiwa ZIP są niezbędne do kompresji i konsolidacji jednego lub więcej plików lub folderów w jednym kontenerze. Ten format nie tylko zmniejsza rozmiar pliku do przechowywania i przesyłania, ale także zachowuje informacje o metadanych, co ułatwia zarządzanie plikami. Archiwa ZIP są powszechnie używane zarówno w aplikacjach desktopowych, jak i internetowych do zadań takich jak przesyłanie, pobieranie, udostępnianie i zabezpieczanie plików za pomocą szyfrowania.
W tym artykule zbadamy różne metody programatycznego tworzenia archiwów ZIP w C#. Nauczysz się, jak:
- Utworzyć archiwum ZIP za pomocą C#
- Dodać wiele plików do archiwum ZIP
- Dodać foldery do archiwum ZIP
- Utworzyć archiwum ZIP zabezpieczone hasłem za pomocą ZipCrypto
- Szyfrować archiwum ZIP za pomocą szyfrowania AES
- Ustawić tryb kompresji równoległej
Biblioteka ZIP w C#
Aspose.ZIP dla .NET to solidne API zaprojektowane do kompresji i dekompresji plików i folderów w aplikacjach .NET. Oferuje funkcje takie jak szyfrowanie AES, aby zabezpieczyć Twoje pliki w archiwach ZIP. Możesz łatwo zainstalować API z NuGet lub pobrać pliki binarne z sekcji Pobieranie.
Utwórz archiwum ZIP w C#
Aby skompresować plik do archiwum ZIP, wykonaj następujące kroki:
- Utwórz obiekt FileStream dla wyjściowego archiwum ZIP.
- Otwórz plik źródłowy za pomocą obiektu FileStream.
- Zainicjuj klasę Archive.
- Dodaj plik do archiwum za pomocą metody Archive.CreateEntry(string, FileStream).
- Zapisz archiwum ZIP za pomocą metody Archive.Save(FileStream).
Oto przykład kodu demonstrujący, jak dodać plik do archiwum ZIP za pomocą C#:
Dodaj wiele plików do archiwum ZIP w C#
Aby dodać wiele plików do archiwum ZIP, możesz wybrać jedną z następujących metod:
Używając FileStream
Wykorzystaj klasę FileStream, aby dodać wiele plików do archiwum ZIP za pomocą metody Archive.CreateEntry(String, FileStream). Oto jak:
Używając FileInfo
Alternatywnie możesz użyć klasy FileInfo, aby dodać pliki. Ta metoda ładuje pliki za pomocą klasy FileInfo i dodaje je do archiwum ZIP za pomocą metody Archive.CreateEntry(String, FileInfo). Zobacz przykład poniżej:
Używając ścieżki pliku
Możesz także dodać pliki bezpośrednio, podając ich ścieżki do metody Archive.CreateEntry(String name, String path, Boolean openImmediately, ArchiveEntrySettings newEntrySettings). Oto jak:
Dodaj foldery do archiwum ZIP w C#
Dodanie folderu do archiwum ZIP może być wygodnym sposobem na uwzględnienie wielu plików. Aby skompresować folder w C#, wykonaj następujące kroki:
- Utwórz obiekt FileStream dla wyjściowego archiwum ZIP.
- Zainicjuj klasę Archive.
- Użyj klasy DirectoryInfo, aby określić folder do skompresowania.
- Dodaj folder do ZIP za pomocą metody Archive.CreateEntries(DirectoryInfo).
- Zapisz archiwum ZIP za pomocą metody Archive.Save(FileStream).
Oto przykład kodu demonstrujący, jak dodać folder do archiwum ZIP w C#:
Utwórz archiwum ZIP zabezpieczone hasłem za pomocą ZipCrypto w C#
Aby zwiększyć bezpieczeństwo, możesz utworzyć archiwa ZIP zabezpieczone hasłem, korzystając z szyfrowania ZipCrypto. Osiąga się to poprzez użycie klasy ArchiveEntrySettings w konstruktorze klasy Archive, co pozwala określić typ szyfrowania.
Oto przykład, jak stworzyć archiwum ZIP zabezpieczone hasłem za pomocą ZipCrypto w C#:
Utwórz archiwum ZIP zabezpieczone hasłem z szyfrowaniem AES
Biblioteka Aspose.ZIP dla .NET obsługuje również szyfrowanie AES dla zabezpieczania archiwów ZIP. Możesz wybierać spośród następujących metod szyfrowania AES:
- AES128
- AES192
- AES256
Aby zastosować szyfrowanie AES, użyj klasy AesEcryptionSettings. Oto jak utworzyć archiwum ZIP zabezpieczone hasłem z szyfrowaniem AES w C#:
Ustaw tryb kompresji równoległej
W przypadku wielu wpisów możesz skonfigurować API do kompresji równoległej, korzystając z klasy ParallelOptions. Aspose.ZIP dla .NET oferuje kilka trybów kompresji równoległej:
- Nigdy - Nie kompresuj równolegle.
- Zawsze - Zawsze kompresuj równolegle (uważaj na problemy z brakiem pamięci).
- Auto - Automatycznie zdecyduj, czy użyć kompresji równoległej w zależności od wpisów.
Oto przykład demonstrujący, jak ustawić tryb kompresji równoległej podczas kompresji wielu plików:
Dowiedz się więcej o bibliotece ZIP C# .NET
Zgłębiaj naszą bibliotekę ZIP C# za pomocą następujących zasobów:
Wypróbuj archiwa ZIP online
Zbadaj naszą bezpłatną aplikację online, opartą na Aspose.ZIP dla .NET, aby łatwo kompresować pliki do archiwów ZIP.
Podsumowanie
W tym artykule nauczyłeś się, jak programatycznie tworzyć archiwa ZIP w C#. Podane przykłady kodu demonstrują, jak dodawać pliki i foldery do archiwów ZIP. Dodatkowo omówiliśmy, jak tworzyć archiwa ZIP zabezpieczone hasłem, korzystając zarówno z metod szyfrowania ZipCrypto, jak i AES. Poruszyliśmy również kwestię kompresji równoległej w celu efektywnego obsługiwania dużych plików. Jeśli masz jakiekolwiek pytania lub potrzebujesz dalszej pomocy, śmiało skontaktuj się z nami za pośrednictwem naszego forum.