Przejdź do treści stopki
UżYCIE IRONZIP

Plik ZIP w C# (Samouczek dla programistów używając IronZip)

ZIP to popularna metoda efektywnego kompresowania i konsolidowania wielu plików i folderów do pojedynczego archiwum ZIP przy użyciu FileStream. Praca z tymi plikami w C# jest ułatwiona dzięki przestrzeni nazw IronZIP, która dostarcza klasy do tworzenia i wyodrębniania istniejących ZIP z danej ścieżki lub pojedynczego zawartego pliku i manipulacji archiwami ZIP. Niezależnie od tego, czy kompresujesz pliki, zajmujesz się ZIP-ami zabezpieczonymi hasłem, czy rozpakowujesz pliki, klasa ZipFile w przestrzeni nazw IronZIP staje się nieocenionym pomocnikiem.

W tym samouczku nie tylko zbadamy fundamentalne procesy tworzenia i wyodrębniania archiwów ZIP, ale również poznamy przykłady kodu do ich realizacji. Klasa ZipArchive nieprzerwanie przechodzi przez ścieżkę łańcuchową, umożliwiając Ci nawigację i manipulację plikami ZIP z wyjątkową precyzją.

Ponadto, poza manipulacją ZIP, będziemy również eksplorować IronPDF, narzędzie do kompresji plików PDF bez utraty integralności dokumentu. Wspólnie, tandem IronZIP i IronPDF wyposażają programistów w solidny zestaw narzędzi do efektywnego zarządzania skompresowanymi plikami i usprawniania dokumentów PDF w środowisku C#.

Wymagania wstępne

Przed rozpoczęciem manipulacji plikami ZIP z IronZIP i IronPDF upewnij się, że zostały spełnione następujące wymagania wstępne:

  1. Visual Studio: Zainstaluj Visual Studio lub inne zintegrowane środowisko programistyczne (IDE) C# według własnego wyboru.
  2. Podstawowa wiedza o C#: Zaznajom się z fundamentalnymi pojęciami języka programowania C#.

Zainstaluj pakiet IronZIP

Aby rozpocząć swoją przygodę z IronZIP, szybko zainstaluj pakiet NuGet IronZIP w swoim projekcie. Wykonaj następujące polecenie w konsoli Menedżera pakietów NuGet:

Install-Package IronZip

Alternatywnie, pobierz pakiet bezpośrednio z oficjalnej strony IronZIP NuGet.

Po zainstalowaniu, rozpocznij kod C# dodając instrukcję using IronZip; na górze.

Zastosuj klucz licencyjny

Upewnij się, że posiadasz ważną licencję lub klucz próbny dla IronZIP. Zastosuj klucz licencyjny, przypisując go do właściwości LicenseKey klasy License. Dodaj następujący kod bezpośrednio po instrukcji importu i przed użyciem jakichkolwiek metod IronZIP:

using IronZip;

namespace YourNamespace
{
    class Program
    {
        static void Main(string[] args)
        {
            // Apply the IronZIP license key
            IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01";
            // Your ZIP manipulation code using IronZIP
        }
    }
}
using IronZip;

namespace YourNamespace
{
    class Program
    {
        static void Main(string[] args)
        {
            // Apply the IronZIP license key
            IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01";
            // Your ZIP manipulation code using IronZIP
        }
    }
}
Imports IronZip

Namespace YourNamespace
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Apply the IronZIP license key
			IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01"
			' Your ZIP manipulation code using IronZIP
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Ten krok jest kluczowy dla wykorzystania pełnego potencjału IronZIP w Twoim projekcie.

Tworzenie pliku ZIP

Tworzenie pliku ZIP z IronZIP jest proste. Użyj klasy IronArchive, aby utworzyć pustą archiwum ZIP, a następnie dodaj do niej pliki. Następujący fragment kodu demonstruje tworzenie pliku ZIP o nazwie 'Images.zip' i dodanie do niego czterech plików obrazów:

using IronZip;

namespace CSharpZipArchive
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Create an archive called Images.zip
            using (var archive = new IronArchive("Images.zip"))
            {
                // Add files to the ZIP
                archive.Add(@"E:\Datasets\1002-v1.png");
                archive.Add(@"E:\Datasets\1002-v2.png");
                archive.Add(@"E:\Datasets\1002-v3.png");
                archive.Add(@"E:\Datasets\1002-v4.png");
            }  // The archive is automatically closed here
        }
    }
}
using IronZip;

namespace CSharpZipArchive
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Create an archive called Images.zip
            using (var archive = new IronArchive("Images.zip"))
            {
                // Add files to the ZIP
                archive.Add(@"E:\Datasets\1002-v1.png");
                archive.Add(@"E:\Datasets\1002-v2.png");
                archive.Add(@"E:\Datasets\1002-v3.png");
                archive.Add(@"E:\Datasets\1002-v4.png");
            }  // The archive is automatically closed here
        }
    }
}
Imports IronZip

Namespace CSharpZipArchive
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Create an archive called Images.zip
			Using archive = New IronArchive("Images.zip")
				' Add files to the ZIP
				archive.Add("E:\Datasets\1002-v1.png")
				archive.Add("E:\Datasets\1002-v2.png")
				archive.Add("E:\Datasets\1002-v3.png")
				archive.Add("E:\Datasets\1002-v4.png")
			End Using ' The archive is automatically closed here
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Instrukcja using tworzy zakreślony obiekt klasy IronArchive i przypisuje go do zmiennej archive. Konstruktor IronArchive przyjmuje jeden argument: nazwę pliku ZIP (w tym przypadku "Images.zip").

Kod dodaje cztery pliki do archiwum ZIP reprezentowanego przez zmienną archive. Pliki są określone poprzez ich pełne ścieżki:

  • E:\Datasets\1002-v1.png
  • E:\Datasets\1002-v2.png
  • E:\Datasets\1002-v3.png
  • E:\Datasets\1002-v4.png

Ponieważ klasa IronArchive implementuje IDisposable, instrukcja using zapewnia poprawne zamknięcie archiwum oraz zwolnienie zasobów po opuszczeniu bloku kodu.

W ten sposób program tworzy archiwum ZIP o nazwie 'Images.zip' i dodaje do niego cztery pliki obrazów. IronZIP uczyniło to niezwykle łatwym, szybkim i wydajnym.

Wyodrębnianie pliku ZIP

Możemy rozpakować plik ZIP używając pojedynczej linii kodu w C#.

using IronZip; 

namespace YourNamespace
{
    public class ExtractionExample
    {
        public static void Main(string[] args)
        {
            // Extract contents of the ZIP archive
            IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images");
        }
    }
}
using IronZip; 

namespace YourNamespace
{
    public class ExtractionExample
    {
        public static void Main(string[] args)
        {
            // Extract contents of the ZIP archive
            IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images");
        }
    }
}
Imports IronZip

Namespace YourNamespace
	Public Class ExtractionExample
		Public Shared Sub Main(ByVal args() As String)
			' Extract contents of the ZIP archive
			IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Powyższy kod wyodrębnia zawartość pliku archiwum ZIP o nazwie 'Images.zip'. Wyodrębnione pliki są umieszczane w katalogu o nazwie 'Extracted Images'. Klasa IronArchive dostarcza metodę ExtractArchiveToDirectory do tego celu, co czyni ekstrakcję zawartości pliku ZIP bardzo wydajną.

Ten pojedyńczy wiersz efektywnie obsługuje proces ekstrakcji, upraszczając zarządzanie plikami.

Add Files to an Existing ZIP file using C

W aplikacjach oprogramowania C#, dodawanie plików do istniejącego pliku ZIP jest wartościowe dla dynamicznego zarządzania treścią. Wyobraź sobie menedżera plików, gdzie użytkownicy mogą łatwo rozszerzać archiwum skompresowane, dodając nowe pliki. IronZIP dostarcza bezproblemową funkcjonalność, aby modyfikować każdy istniejący plik ZIP.

using IronZip;

namespace CSharpZipArchive
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Open an existing ZIP file and create a new one
            using (var archive = IronArchive.FromFile("Images.zip", "NewImages.zip"))
            {
                // Add new files to the ZIP
                archive.Add(@"E:\Datasets\1011-v1.png");
                archive.Add(@"E:\Datasets\1011-v2.png");
            }  // The new archive is automatically closed here
        }
    }
}
using IronZip;

namespace CSharpZipArchive
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Open an existing ZIP file and create a new one
            using (var archive = IronArchive.FromFile("Images.zip", "NewImages.zip"))
            {
                // Add new files to the ZIP
                archive.Add(@"E:\Datasets\1011-v1.png");
                archive.Add(@"E:\Datasets\1011-v2.png");
            }  // The new archive is automatically closed here
        }
    }
}
Imports IronZip

Namespace CSharpZipArchive
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Open an existing ZIP file and create a new one
			Using archive = IronArchive.FromFile("Images.zip", "NewImages.zip")
				' Add new files to the ZIP
				archive.Add("E:\Datasets\1011-v1.png")
				archive.Add("E:\Datasets\1011-v2.png")
			End Using ' The new archive is automatically closed here
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Metoda IronArchive.FromFile("Images.zip", "NewImages.zip") tworzy obiekt archiwum z istniejącego pliku ZIP o nazwie "Images.zip" i określa, że nowe archiwum powinno nosić nazwę "NewImages.zip".

Dwie linie w bloku using dodają pliki do nowo utworzonego archiwum:

  • archive.Add(@"E:\Datasets\1011-v1.png");
  • archive.Add(@"E:\Datasets\1011-v2.png");

Te linie dodają określone pliki obrazów do archiwum 'NewImages.zip'.

System plików

Kompresja pliku PDF

Oprócz zarządzania ZIP-ami, C# oferuje także możliwość płynnego kompresowania plików PDF. To zadanie jest osiągalne dzięki pomocy zewnętrznej biblioteki: IronPDF. Wyróżnia się jako niezawodne rozwiązanie do kompresji plików PDF przy zachowaniu ich jakości.

Przedstawiamy IronPDF

IronPDF to wszechstronna biblioteka C# zaprojektowana, aby umożliwić programistom efektywne zarządzanie dokumentami PDF w ich aplikacjach .NET. Dostarcza wiele funkcji, w tym generowanie PDF, manipulację, ekstrakcję tekstu i obrazów, obsługę formularzy, podpisy cyfrowe, konwersję HTML do PDF, kompresję PDF oraz ulepszenia zabezpieczeń. Te możliwości czynią go nieocenionym narzędziem do zadań takich jak tworzenie PDF, edycja, generowanie raportów oraz zarządzanie dokumentami w ramach .NET, zapewniając produktywność i możliwość dostosowania operacji PDF.

Zainstaluj IronPDF

Aby włączyć IronPDF do swojego projektu, wykonaj następujące polecenie w konsoli Menedżera Pakietów:

Install-Package IronZip

Write a Code to Compress PDF File in C

Poniższy przykład kodu demonstruje kompresję plików PDF przy zachowaniu jakości archiwum.

using IronPdf;

namespace YourNamespace
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Load the PDF document
            var pdf = new PdfDocument(@"E:\myPDF.pdf");

            // Compress images in the PDF to 60% of original quality
            pdf.CompressImages(60);

            // Save the compressed PDF
            pdf.SaveAs(@"E:\myCompressedPDF.pdf");
        }
    }
}
using IronPdf;

namespace YourNamespace
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Load the PDF document
            var pdf = new PdfDocument(@"E:\myPDF.pdf");

            // Compress images in the PDF to 60% of original quality
            pdf.CompressImages(60);

            // Save the compressed PDF
            pdf.SaveAs(@"E:\myCompressedPDF.pdf");
        }
    }
}
Imports IronPdf

Namespace YourNamespace
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Load the PDF document
			Dim pdf = New PdfDocument("E:\myPDF.pdf")

			' Compress images in the PDF to 60% of original quality
			pdf.CompressImages(60)

			' Save the compressed PDF
			pdf.SaveAs("E:\myCompressedPDF.pdf")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

W powyższym kodzie otwieramy "myPDF.pdf" za pomocą IronPDF. Metoda CompressImages zmniejsza jakość obrazu do 60%, a skompresowany plik PDF jest zapisywany jako "myCompressedPDF.pdf" w określonej lokalizacji.

Wynik

Wykonując powyższy kod, uzyskujemy wymierne zmniejszenie rozmiaru pliku, co potwierdza wynik, gdzie rozmiar skompresowanego PDF został zmniejszony do 254 KB z pierwotnej wielkości 0,9 MB. To świadczy o skuteczności IronPDF w efektywnej kompresji plików PDF bez utraty ich jakości.

Porównanie rozmiarów plików

Efficient File Management with IronZIP and IronPDF in C

W programowaniu C#, połączenie IronZIP i IronPDF stanowi solidne rozwiązanie na potrzeby kompleksowego zarządzania plikami. IronZIP znakomicie radzi sobie z efektywnym kompresowaniem i manipulowaniem plikami ZIP, oferując programistom bezproblemowe tworzenie i wyodrębnianie archiwów. Równocześnie, IronPDF służy jako potężne narzędzie do obsługi dokumentów PDF, umożliwiając kompresję plików przy zachowaniu integralności dokumentów. To zintegrowanie umożliwia programistom swobodne poruszanie się między skompresowanymi archiwami a plikami PDF, zwiększając ogólną funkcjonalność i wydajność ich aplikacji.

Niezależnie od tego, czy chodzi o kompresję różnorodnych plików do archiwum ZIP, czy o optymalizację rozmiarów dokumentów PDF, połączona moc IronZIP i IronPDF tworzy elastyczne narzędzie dla programistów, rozwiązując szeroki zakres problemów związanych z plikami.

Wnioski

Podsumowując, IronZIP dla C# oferuje solidne możliwości pracy z plikami skompresowanymi, umożliwiając programistom tworzenie plików ZIP, ekstrakcję i manipulację archiwami w sposób efektywny. IronPDF jest także potężnym narzędziem do kompresji plików PDF, ułatwiającym redukcję rozmiarów plików przy zachowaniu integralności dokumentów. Programiści mogą wykorzystać te funkcje, aby zwiększyć wydajność i funkcjonalność swoich aplikacji, zapewniając bezproblemową obsługę plików archiwalnych i skompresowanych. Ponadto warto zauważyć, że IronPDF oferuje elastyczny model licencji, w tym bezpłatną wersję próbną, pozwalając programistom na zapoznanie się z jego możliwościami i ustalenie najlepszego dopasowania dla swoich projektów. Okres próbny daje programistom cenną możliwość oceny funkcji IronZIP i IronPDF przed podjęciem decyzji o licencjonowaniu.

Często Zadawane Pytania

Jak utworzyć plik ZIP w języku C#?

Aby utworzyć plik ZIP w języku C#, można użyć klasy IronArchive z biblioteki IronZIP. Klasa ta pozwala utworzyć puste archiwum ZIP i dodawać do niego pliki, zapewniając wydajne metody zarządzania zawartością pliku ZIP.

Jak wyodrębnić pliki z archiwum ZIP w języku C#?

Pliki z archiwum ZIP można wyodrębnić za pomocą metody ExtractArchiveToDirectory w klasie IronArchive biblioteki IronZIP. Metoda ta pozwala określić katalog, do którego pliki zostaną wyodrębnione.

Czy w języku C# mogę obsługiwać pliki ZIP chronione hasłem?

Tak, IronZIP oferuje funkcje do zarządzania plikami ZIP chronionymi hasłem, umożliwiając bezpieczną kompresję i wyodrębnianie poufnych danych.

Jakie kroki należy wykonać, aby zainstalować pakiet biblioteki ZIP w języku C#?

Aby zainstalować bibliotekę IronZIP, użyj polecenia Install-Package IronZip w konsoli NuGet Package Manager Console lub pobierz ją bezpośrednio z oficjalnej strony IronZIP NuGet.

Jak zastosować klucz licencyjny dla biblioteki ZIP w języku C#?

Aby zastosować klucz licencyjny dla IronZIP, przypisz swój klucz licencyjny do właściwości LicenseKey klasy Licensing.License w swojej aplikacji.

Jak skompresować plik PDF w języku C#?

Aby skompresować plik PDF w języku C#, można użyć biblioteki IronPDF. Należy załadować dokument PDF i zastosować metodę CompressImages w celu obniżenia jakości obrazów, a następnie zapisać skompresowany plik PDF w wybranej lokalizacji.

Czy dostępna jest wersja próbna biblioteki PDF w języku C#?

Tak, IronPDF oferuje bezpłatną wersję próbną, która pozwala programistom zapoznać się z możliwościami oprogramowania przed zawarciem Umowy licencyjnej.

Jakie są wymagania wstępne dotyczące pracy z plikami ZIP i PDF w języku C#?

Aby pracować z plikami ZIP i PDF w języku C#, należy mieć zainstalowane środowisko Visual Studio lub podobne środowisko IDE dla języka C# oraz podstawową wiedzę na temat koncepcji programowania w języku C#. Potrzebne są również biblioteki IronZIP i IronPDF.

Czym jest narzędzie C# do obsługi plików ZIP?

Biblioteka IronZIP przeznaczona do wydajnego tworzenia, modyfikowania i rozpakowywania archiwów ZIP, co czyni ją idealnym rozwiązaniem dla programistów pracujących z plikami ZIP w aplikacjach .NET.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej

Zespół wsparcia Iron

Jesteśmy online 24 godziny, 5 dni w tygodniu.
Czat
E-mail
Zadzwoń do mnie