Buka zip File di C#

Pada posting sebelumnya, Anda telah mempelajari berbagai cara untuk meng-zip file dan folder ke dalam arsip ZIP menggunakan Aspose.ZIP for .NET. Dalam posting ini, saya akan menunjukkan cara mengekstrak atau mengekstrak file ZIP di C#. Kami juga akan membahas cara mengekstrak arsip ZIP terenkripsi yang dilindungi kata sandi atau AES di C #. Artikel ini dibagi menjadi beberapa bagian berikut:

C# API untuk Menguraikan File ZIP - Unduhan Gratis

Sebelum kita mulai, pastikan Anda telah mengunduh dan mereferensikan Aspose.ZIP for .NET atau menginstal paketnya menggunakan NuGet Package Manager di proyek Anda.

Buka zip File ZIP di C# .NET

Proses unzip file ZIP dapat dilakukan dengan dua cara:

  • Buka zip setiap file dalam ZIP secara terpisah
  • Buka zip file ke folder tertentu

Pada metode pertama, Anda dapat mengakses dan mengekstrak setiap file secara eksplisit di arsip ZIP. Selanjutnya, Anda dapat mencetak kemajuan proses ekstraksi. Padahal, metode kedua cukup unzip file ke folder yang ditentukan.

Ekstrak Setiap File dalam ZIP di C#

Berikut adalah langkah-langkah untuk mengakses dan mengekstrak file dan mencetak progres ekstraksi di C#:

Contoh kode berikut menunjukkan cara mengekstrak file dalam arsip ZIP menggunakan C#.

// Buka file ZIP
using (FileStream zipFile = File.Open("compressed_files.zip", FileMode.Open))
{
	using (Archive archive = new Archive(zipFile, new ArchiveLoadOptions()))
	{
		// Akses setiap entri dalam arsip ZIP
		for (int i = 0; i < archive.Entries.Count; i++)
		{
			int percentReady = 0;
			// Kemajuan ekstraksi log ke konsol.
			archive.Entries[i].ExtractionProgressed += (s, e) =>
			{
				int percent = (int)((100 * e.ProceededBytes) / ((ArchiveEntry)s).UncompressedSize);
				if (percent > percentReady)
				{
					Console.WriteLine(string.Format("{0}% decompressed", percent));
					percentReady = percent;
				}
			};
			// Ekstrak konten entri ke disk.
			archive.Entries[i].Extract(archive.Entries[i].Name);
		}
	}
}

C# Unzip File ZIP ke dalam Folder

Langkah-langkah berikut digunakan untuk mengekstrak file ZIP ke folder tertentu di C#.

Contoh kode C# berikut membuka zip file ZIP ke dalam folder.

// Buka file ZIP
using (FileStream zipFile = File.Open("compressed_files.zip", FileMode.Open))
{
	using (var archive = new Archive(zipFile))
	{
		// Buka zip file ke folder
		archive.ExtractToDirectory("Unzipped Files");
	}
}

C# Ekstrak File ZIP yang Dilindungi Kata Sandi

Anda juga dapat meng-unzip arsip ZIP yang dilindungi kata sandi menggunakan Aspose.ZIP for .NET. Untuk ini, Anda hanya perlu menentukan kata sandi menggunakan kelas ArchiveLoadOptions yang akan diteruskan sebagai parameter kedua ke konstruktor Arsip.

Berikut ini adalah contoh kode untuk meng-unzip file ZIP yang dilindungi kata sandi.

// Buka file ZIP
using (FileStream zipFile = File.Open("compressed_files.zip", FileMode.Open))
{
	// Dekripsi menggunakan kata sandi
	using (var archive = new Archive(zipFile, new ArchiveLoadOptions() { DecryptionPassword = "p@s$" }))
	{
    		// Ekstrak file ke folder
		archive.ExtractToDirectory("Unzipped Files");
	}
}

C# Ekstrak File ZIP Terenkripsi AES

Arsip ZIP juga dapat dienkripsi dengan enkripsi AES. Aspose.ZIP for .NET mendukung enkripsi arsip dengan metode enkripsi AES128, AES192, dan AES256. Membuka ritsleting file ZIP terenkripsi AES mirip dengan membuka ritsleting file ZIP yang dilindungi kata sandi. Cukup tentukan kata sandi dekripsi menggunakan kelas ArchiveLoadOptions dan sisanya akan ditangani oleh API.

Contoh kode berikut menunjukkan cara mengekstrak file ZIP terenkripsi AES di C#.

// Buka file ZIP
using (FileStream zipFile = File.Open("encrypted.zip", FileMode.Open))
{
  	// Dekripsi dan ekstrak ke folder
	new Archive(zipFile, new ArchiveLoadOptions() { DecryptionPassword = "p@s$" }).ExtractToDirectory("decrypted");
}

C# Unzip Library - Dapatkan Lisensi API Gratis

Anda dapat menggunakan Aspose.ZIP for .NET tanpa batasan evaluasi dengan mendapatkan lisensi sementara gratis.

Kesimpulan

Pada artikel ini, Anda telah mempelajari cara meng-unzip file ZIP menggunakan C#. Selain itu, Anda telah melihat cara mengekstrak file dalam arsip ZIP yang dilindungi kata sandi di C# .NET. Contoh kode juga menunjukkan cara mengekstrak file dalam arsip ZIP terenkripsi di C#. Anda dapat mempelajari lebih lanjut tentang Aspose.ZIP for .NET menggunakan dokumentasi.

Artikel Terkait