C#

C# Dosya Sıkıştırma

Merhabalar, Bu dersimizde Zip dosyası oluşturmayı anlatacağım. Hadi başlayalım !

Öncelikle Visual Studio aracılığıyla bir tane proje oluşturalım, adının önemi yok. Ardından sıkıştırma işlemi için kullanacağımız paketi Nuget paket yöneticisi aracılığıyla indirip projemize dahil edelim. Bunun içinde Nuget’i açıp

install-package DotNetZip

komutunu girelim. Bu komut Nuget’in DotNetZip paketini indirip projemize dahil etmesini sağlayacaktır.

Evet ön hazırlıklarımız tamam, şimdi kod yazma aşamasına geçebiliriz. Sıkıştırma işlemini yapmak istediğimiz formun kodlarını açıp öncelikle projeye eklediğimi DotNetZip paketini sayfada çağırmamız gerek. Bu sayede Visual Studio’nun paketi tanımasını sağlayacağız. Bunun için de sayfanın başına

using Ionic.Zip;

kod satırını ekleyelim. Ve artık sıkıştırma işlemini yapabiliriz.

Burada iki farklı seçeneğimiz var; birincisi dosya sıkıştırma ve ikinci de klasör sıkıştırma. Öncelikle klasör sıkıştırmadan bahsedeyim. Örneğin masaüstünde bulunan deneme isimli klasörü sıkıştırıp yine masaüstüne deneme.zip isminde kaydetmek istersek, şöyle bi kod yapısı kullanmalıyız;

using (ZipFile zip = new ZipFile())
{
    zip.AddDirectory("c:/users/kullanici/desktop/deneme");
    zip.Save("c:/users/kullanici/desktop/deneme.zip");
}

Burada kullandığımız ZipFile sınıfının yeni bir nesnesini tüketerek sıkıştırma işlemini başlatıyor, AddDirectory() fonksiyonu ile klasör ekliyor ve Save() metodu ile de sıkıştırılan dosyayı kaydediyoruz. Aynı şekilde örneğin masaüstünde bulunan deneme.txt dosyasını sıkıştırıp deneme.zip ismiyle kaydetmek için ise;

using(ZipFile zip = new ZipFile())
{
    zip.AddFile("c:/users/kullanici/desktop/deneme.txt");
    zip.Save("c:/users/kullanici/desktop/deneme.zip");
}

kod yapısını kullanmamız gerek. Burada bulunan AddFile() fonksiyonu deneme.txt dosyasını sıkıştırılmış dosyanın içine ekleyip, Save() metodu da tıpkı klasör sıkıştırmada olduğu gibi kaydetme işlemini yapıyor.

Ayrıca sıkıştırdığımız dosyaya şifre de koyabiliriz. Bunun için Password anahtar kelimesini kullanmalıyız. Yani;

zip.Password = "şifre";

Bu dersimizde bu kadardı. Buraya kadar yazdığımız tüm kodları toplu olması adına aşağıya bırakıyorum.

using(ZipFile zip = new ZipFile())
{
    zip.Password = "şifre";
    zip.AddDirectory("c:/users/kullanici/desktop/deneme.txt");
    zip.AddFile("c:/users/kullanici/desktop/deneme.txt");
    zip.Save("c:/users/kullanici/desktop/deneme.zip");
}

Tüm C# derslerimize buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.

Skorumuz:
Oy Vermek İçin Tıklayın
[Toplam: 0 Ortalama: 0]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu