Altbilgi içeriğine atla
IRONZIP KULLANıMı

C# Kullanarak Klasördeki Dosyalar Nasıl Sıkıştırılır

ZIP dosyaları, ZIP formatını kullanarak bir veya daha fazla sıkıştırılmış dosya veya klasör içeren dosyalardır. Bu, birden fazla dosya veya klasörü tek bir dosya haline getirerek sıkıştırma ve arşivleme yapmanın yaygın bir yoludur. Veri boyutunu küçültüp disk alanından tasarruf edebilir ve internet üzerinden dosya aktarımını kolaylaştırabilirler. Bu makalede, ZIP dosyaları ile çalışmayı öğreneceksiniz C# kullanarak IronZIP kütüphanesi ile. Programlı olarak ZIP dosyaları oluşturma, okuma, çıkarma ve güncelleme yapmanın yanı sıra şifreleme, parola koruma ve sıkıştırma seviyeleri gibi IronZIP'in çeşitli özelliklerini nasıl kullanacağınızı göreceksiniz. Bu makalenin sonunda, IronZIP'i C# uygulamalarınızda ZIP dosyalarıyla çalışmak için kolayca kullanabiliyor olacaksınız.

Bu Makalede Ele Alacaklarımız

  1. Projemize IronZIP'i Kurun
  2. Bir ZIP dosyası oluşturun
  3. Parola Korumalı ZIP dosyası oluşturun
  4. ZIP dosyasını çıkarın
  5. Parola Korumalı ZIP Dosyasını çıkarın
  6. Mevcut ZIP arşivine erişim

IronZip Nedir?

IronZIP, programlı olarak ZIP dosyaları oluşturmanıza, okumanıza ve çıkarmanıza olanak tanıyan güçlü ve esnek bir C# ZIP arşiv kütüphanesidir. ZIP, TAR, GZIP ve BZIP2 gibi çeşitli arşiv formatlarını destekler. Parola koruma, şifreleme ve sıkıştırma seviyelerini de destekler. IronZIP, .NET 8, 7, 6, Core, Standard ve Framework ile uyumludur.

IronZIP, ZIP dosyalarıyla çalışma konusunda çeşitli kullanım durumlarını ve faydalarını yönetmenize yardımcı olabilir, örneğin:

  1. Öğe sistemi oluşturma: Önemli dosyalarınızı ve klasörlerinizi ZIP arşivine sıkıştırıp şifreleyerek güvenli bir yere depolamak için IronZIP'i kullanabilirsiniz. Bu şekilde, disk alanından tasarruf edebilir ve verilerinizi yetkisiz erişimden koruyabilirsiniz.
  2. E-posta ekleri gönderme: E-posta eklerinizi ZIP dosyasına sıkıştırarak boyutlarını küçültmek için IronZIP'i kullanabilirsiniz. Bu, dosya boyutu sınırını aşmaktan kaçınmanıza ve iletim sürecini hızlandırmanıza yardımcı olabilir.
  3. Web'den dosya indirme: Yazılım paketleri, belgeler, resimler ve diğer dosya türleri gibi ZIP dosyalarını web'den indirmek ve çıkarmak için IronZIP'i kullanabilirsiniz. Bu, bant genişliğinden ve zamandan tasarruf etmenize ve ihtiyaçınız olan dosyalara kolayca erişmenize yardımcı olabilir.

IronZIP ile Başlarken

Kodu yazmadan önce, C# projenize IronZIP NuGet Paketini kurmanız gerekmektedir. IronZIP, NuGet üzerinden erişilebilen popüler bir sıkıştırma kütüphanesidir.

IronZIP Kütüphanesini Kurma

IronZIP'i kurmak için Visual Studio'da NuGet Paket Yöneticisi Konsolunu kullanabilirsiniz. Basitçe aşağıdaki komutu çalıştırın:

Install-Package IronZip

Alternatif olarak, paketi doğrudan resmi IronZIP web sitesinden indirebilirsiniz. Yüklendikten sonra, C# kodunuzun en üstüne aşağıdaki ad alanını ekleyerek başlayabilirsiniz.

using IronZip;
using IronZip;
Imports IronZip
$vbLabelText   $csharpLabel

Bir Klasörde C# ZIP Dosyaları Oluşturma

IronZIP'i kullanarak bir klasörde kolayca ZIP dosyaları oluşturabilirsiniz. Aşağıdaki kod, belirtilen dizindeki tüm dosyaları sıkıştıracak.

using System;
using System.IO;
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Get all files from the specified directory
        string[] fileArray = Directory.GetFiles(@"D:\Docs\");

        // Create a new ZIP archive
        using (var archive = new IronZipArchive())
        {
            // Iterate through each file and add it to the archive
            foreach (var file in fileArray)
            {
                archive.Add(file); // Add files to the ZIP
            }
            // Save the archive to a file
            archive.SaveAs("myZipFile.zip");
        }
    }
}
using System;
using System.IO;
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Get all files from the specified directory
        string[] fileArray = Directory.GetFiles(@"D:\Docs\");

        // Create a new ZIP archive
        using (var archive = new IronZipArchive())
        {
            // Iterate through each file and add it to the archive
            foreach (var file in fileArray)
            {
                archive.Add(file); // Add files to the ZIP
            }
            // Save the archive to a file
            archive.SaveAs("myZipFile.zip");
        }
    }
}
Imports System
Imports System.IO
Imports IronZip

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Get all files from the specified directory
		Dim fileArray() As String = Directory.GetFiles("D:\Docs\")

		' Create a new ZIP archive
		Using archive = New IronZipArchive()
			' Iterate through each file and add it to the archive
			For Each file In fileArray
				archive.Add(file) ' Add files to the ZIP
			Next file
			' Save the archive to a file
			archive.SaveAs("myZipFile.zip")
		End Using
	End Sub
End Class
$vbLabelText   $csharpLabel

Yukarıdaki C# kodu, tüm dosyaları tek bir ZIP dosyasına sıkıştırmak için IronZIP kütüphanesini kullanır. Kod aşağıdaki işlemleri yapar:

  • Bir dizgi dizisi olarak fileArray turuyü atar ve dizin yolunu ("D:\Docs") bir parametre olarak geçirerek Directory.GetFiles metodunun sonucunu atar. Bu metod, belirtilen dizindeki tüm dosyaların tam adlarını içeren bir dizgi dizisi döndürür.
  • Bellekte bir ZIP arşivini temsil eden IronZipArchive sınıfının yeni bir örneğini oluşturur. Örnek, archive olarak adlandırılmış bir değişkene atanır ve kod bloğu sona erdiğinde ZIP arşivinin bırakılmasını sağlayan using ifadesine sarılır.
  • fileArray dizisi üzerinde foreach döngüsünü kullanarak yineler ve her dosya için archive nesnesinin Add metodunu dosya adı parametre olarak geçer. Bu yöntem, dosya ile aynı adı ve içeriği olan yeni bir girdiyi ZIP arşivine ekler.
  • archive nesnesinin SaveAs metodunu çağırır ve ZIP dosyasının adını ("myZipFile.zip") parametre olarak geçirir. Bu yöntem, ZIP arşivini mevcut dosya sisteminde bir dosyaya kaydeder.

Bu şekilde, sadece birkaç satır kod kullanarak kolayca yeni ZIP arşivleri oluşturabilirsiniz.

Çıktı

Çıktı aşağıdaki gibidir:

Klasördeki Dosyaları C# Kullanarak Nasıl ZIP Yapılır: Şekil 1 - Önceki kod örneğinden çıkan dosyalar

Şifre Korumalı ZIP Dosyası Oluşturma

IronZIP, parola korumalı ZIP dosyaları oluşturmak için kolay bir yöntem sunar. Aşağıdaki kod örneği dosyaları sıkıştıracak ve parolalı yeni bir ZIP dosyası oluşturacaktır.

using System;
using System.IO;
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Get all files from the specified directory
        string[] fileArray = Directory.GetFiles(@"D:\Docs\");

        // Create a new ZIP archive
        using (var archive = new IronZipArchive())
        {
            // Iterate through each file and add it to the archive
            foreach (var file in fileArray)
            {
                archive.Add(file); // Add files to the ZIP
            }
            // Set Password and Encryption Method
            archive.Encrypt("myPa55word", EncryptionMethods.AES256);
            // Save the archive to a file
            archive.SaveAs("myZipFile.zip");
        }
    }
}
using System;
using System.IO;
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Get all files from the specified directory
        string[] fileArray = Directory.GetFiles(@"D:\Docs\");

        // Create a new ZIP archive
        using (var archive = new IronZipArchive())
        {
            // Iterate through each file and add it to the archive
            foreach (var file in fileArray)
            {
                archive.Add(file); // Add files to the ZIP
            }
            // Set Password and Encryption Method
            archive.Encrypt("myPa55word", EncryptionMethods.AES256);
            // Save the archive to a file
            archive.SaveAs("myZipFile.zip");
        }
    }
}
Imports System
Imports System.IO
Imports IronZip

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Get all files from the specified directory
		Dim fileArray() As String = Directory.GetFiles("D:\Docs\")

		' Create a new ZIP archive
		Using archive = New IronZipArchive()
			' Iterate through each file and add it to the archive
			For Each file In fileArray
				archive.Add(file) ' Add files to the ZIP
			Next file
			' Set Password and Encryption Method
			archive.Encrypt("myPa55word", EncryptionMethods.AES256)
			' Save the archive to a file
			archive.SaveAs("myZipFile.zip")
		End Using
	End Sub
End Class
$vbLabelText   $csharpLabel

Satır archive.Encrypt("myPa55word", EncryptionMethods.AES256);, bir ZIP arşivine IronZIP kullanarak 'myPa55word' parolasını ayarlar. Bu, arşivi AES-256 şifrelemesi uygulayarak güvenliği artırır ve yalnızca doğru parolaya sahip kullanıcıların içeriğe erişebilmesini sağlar. Bu özellik, C# uygulamaları içinde verilerin depolanması veya aktarılması sırasında hassas verileri korumak için değerlidir. Sifreleme algoritmasinin belirtilen modunu ikinci parametrede gecirmeniz gerekir.

Dosya aşağıda gösterildiği gibi şifrelenmiştir.

Çıktı

Klasördeki Dosyaları C# Kullanarak Nasıl ZIP Yapılır: Şekil 2 - Önceki kod örneğinden çıkan şifreli dosya

Belirtilen yoldaki dizinlerde döngü oluşturarak bir ZIP dosyası oluşturma demosunu gördük. Şimdi, dosyaları çıkartma örneğine doğru ilerleyelim.

ZIP Arşivinden Dosyaları Çıkartma

IronZIP, C#'da bir ZIP arşivinden dosya çıkarmak için bir yöntem sağlar. Asagidaki kod ornegi, ZIP arsivinin icindeki sikistirilmis dosyayi cikartacaktir.

using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Extract all files from the ZIP archive to the specified directory
        IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles");
    }
}
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Extract all files from the ZIP archive to the specified directory
        IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles");
    }
}
Imports IronZip

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Extract all files from the ZIP archive to the specified directory
		IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles")
	End Sub
End Class
$vbLabelText   $csharpLabel

Kod IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles"); IronZIP'i kullanarak "myZipFile.zip" içindeki tüm dosyaları çıkartır ve onları "myExtractedFiles" dizinine yerleştirir. Bu özlü yöntem, dosya çıkarma görevleri için uygun bir çözüm sunarak C# dilinde ZIP arşivlerini çıkartma sürecini basitleştirir.

Çıktı

Çıktı aşağıdaki gibidir:

Klasördeki Dosyaları C# Kullanarak Nasıl ZIP Yapılır: Şekil 3 - Önceki kod örneğinden çıkan dosyalar

Parola Korumalı ZIP Dosyasından Nasıl Çıkarılır

IronZIP, parolayla korunan ZIP dosyalarını açmak için bir yöntem de sağlar. Aşağıdaki kod, belirtilen ZIP dosyasındaki tüm mevcut dosya ve dizinleri çıkarmak için IronZIP yöntemini kullanacaktır.

using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Extract all files from the password-protected ZIP archive to the specified directory
        IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles", "myPa55word");
    }
}
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Extract all files from the password-protected ZIP archive to the specified directory
        IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles", "myPa55word");
    }
}
Imports IronZip

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Extract all files from the password-protected ZIP archive to the specified directory
		IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles", "myPa55word")
	End Sub
End Class
$vbLabelText   $csharpLabel

ZIP arşivindeki tüm girdileri belirtilen bir dizine çıkartan IronZipArchive sınıfının ExtractArchiveToDirectory metodudur. Yönteme üç argüman geçer: ZIP dosyasının yolu ("myZipFile.zip"), hedef dizinin yolu ("myExtractedFiles") ve ZIP dosyasının parolası ("myPa55word").

Bu sekilde, sifre korumali ZIP dosyalarini kolayca ayiklayabilirsiniz.

Mevcut Bir Arşive Nasıl Erişilir

IronZIP, mevcut arşive erişmek ve dosyada bulunan tüm öğeleri görüntülemek için yöntemler sağlar.

using System;
using System.Collections.Generic;
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Open an existing ZIP archive with a password
        using (var archive = new IronZipArchive("myZipFile.zip", "myPa55word"))
        {
            // Get entries list
            List<string> names = archive.GetArchiveEntryNames();
            // Iterate through each entry name and print it
            foreach (string name in names)
            {
                Console.WriteLine(name);
            }
        }
    }
}
using System;
using System.Collections.Generic;
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Open an existing ZIP archive with a password
        using (var archive = new IronZipArchive("myZipFile.zip", "myPa55word"))
        {
            // Get entries list
            List<string> names = archive.GetArchiveEntryNames();
            // Iterate through each entry name and print it
            foreach (string name in names)
            {
                Console.WriteLine(name);
            }
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports IronZip

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Open an existing ZIP archive with a password
		Using archive = New IronZipArchive("myZipFile.zip", "myPa55word")
			' Get entries list
			Dim names As List(Of String) = archive.GetArchiveEntryNames()
			' Iterate through each entry name and print it
			For Each name As String In names
				Console.WriteLine(name)
			Next name
		End Using
	End Sub
End Class
$vbLabelText   $csharpLabel

Sağlanan C# kodu, 'myZipFile.zip' adlı bir ZIP dosyasını "myPa55word" parolasıyla yükleyerek güvenli bir IronZipArchive örneği oluşturmak için IronZIP kullanır. Dosya şifrelenmemişse parola parametresini geçirmeyin. Daha sonra şifrelenmiş ZIP arşivi içindeki giriş isimlerinin (dosya ve klasör isimlerinin) listesini alır ve yazdırır.

GetArchiveEntryNames metodu giriş adlarını toplar ve bir foreach döngüsü her adı konsola çıktı olarak verir. Bu, IronZIP'in parola korumalı ZIP arşivlerinden giriş bilgilerine güvenli erişim ve geri alma işlemini özlü bir şekilde nasıl sağladığını gösterir.

Çıktı

Klasördeki Dosyaları C# Kullanarak Nasıl ZIP Yapılır: Şekil 4 - Önceki kod örneğinden çıkan

Sonuç

Sonuç olarak, IronZIP, ZIP dosyalarıyla çalışmak için güçlü ve çok yönlü bir C# kütüphanesi olduğunu kanıtlıyor. Yetkinlikleri, temel sıkıştırma ve çıkarma işlemlerinin ötesine geçer, parola koruma, şifreleme ve çeşitli arşiv formatlarıyla uyumluluk gibi özellikler sunar. Yedekleme sistemleri oluşturuyor, e-posta eklerini yönetiyor veya web'den dosya indiriyor olun, IronZIP bu görevleri basitlik ve verimlilikle kolaylaştırır.

C# uygulamalarınıza IronZIP'i entegre ederek, ZIP dosyalarını yönetmek, veri güvenliğini artırmak ve dosya transfer süreçlerini optimize etmek için güçlü bir araç elde edersiniz. Gerektiginde ücretsiz bir denemeden yararlanabilirsiniz.

Sıkça Sorulan Sorular

C#'de bir klasörden ZIP dosyası nasıl oluşturabilirim?

IronZIP'i kullanarak bir klasörden ZIP dosyası oluşturabilirsiniz; belli bir dizindeki dosyaları yineleyerek yeni bir ZIP arşivine ekleyin. IronZipArchive sınıfını kullanın ve ZIP dosyasını kaydetmek için SaveAs yöntemini çağırın.

Bir C# projesine IronZIP nasıl yüklenir?

Visual Studio'daki NuGet Paket Yöneticisi'ni kullanarak C# projenize IronZIP'i yükleyin. Paket Yöneticisi Konsolunda Install-Package IronZip komutunu çalıştırın veya resmi IronZIP web sitesinden indirin.

IronZIP, ZIP dosyası yönetimi için hangi formatları destekler?

IronZIP, farklı sıkıştırma ve arşivleme ihtiyaçları için esneklik sunarak, ZIP, TAR, GZIP ve BZIP2 dahil çeşitli arşiv formatlarını destekler.

C#'de oluşturulan ZIP dosyalarını şifreleyebilir miyim?

Evet, IronZIP ile AES-256 şifrelemesi uygulayarak arşivdeki verilerinizi güvence altına almak için Encrypt yöntemini kullanarak ZIP dosyalarını şifreleyebilirsiniz.

C#'de bir ZIP dosyasından dosyaları nasıl çıkarabilirim?

IronZIP kullanarak bir ZIP arşivinden dosyaları çıkarmak için ExtractArchiveToDirectory yöntemini kullanın ve kaynak ZIP dosyasını ve varış dizinini belirtin.

C#'de parola korumalı ZIP dosyalarını ele almak mümkün müdür?

Evet, IronZIP ile ExtractArchiveToDirectory gibi yöntemleri kullanırken içeriğe güvenli bir şekilde erişmek için parolayı sağlayarak parola korumalı ZIP dosyalarını ele alabilirsiniz.

IronZIP kullanarak ZIP dosya yönetimi yapmanın avantajları nelerdir?

IronZIP, şifreleme, parola koruması ve birçok arşiv formatı desteği gibi özellikler sunarak dosya yedekleme, e-posta eki yönetimi ve web indirmeleri gibi görevleri kolaylaştırır.

IronZIP, .NET 8 ve diğer sürümleri destekler mi?

IronZIP, .NET 8, 7, 6, Core, Standard ve Framework ile uyumludur; bu, çeşitli C# projelerine entegrasyon için esneklik sağlar.

Geliştiriciler IronZIP'in deneme sürümüne nasıl erişebilir?

Geliştiriciler, IronZIP'in özelliklerini değerlendirmek için IronZIP web sitesindeki lisans veya indirme bölümüne giderek ücretsiz deneme sürümüne erişebilirler.

Veri transferi için ZIP dosyalarını kullanmanın faydası nedir?

ZIP dosyaları, dosya boyutunu küçülttükleri, disk alanı tasarrufu sağladıkları ve birçok dosyanın internet üzerinden verimli bir şekilde gönderilmesini kolaylaştırdıkları için veri transferi için faydalıdır.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara