C# ile Dosya ve Klasör İşlemleri !

Merhaba, Bu dersimizde C# ile Dosya ve Klasör Silmeyi,Oluşturmayı,Düzenlemeyi vb. Konuları sizlere aktaracağım. Her programcının bilmesi gereken bir konu bence. Çünkü genelde iyi bir proje yazarken biraz sonra vereceğim kodlar çok işinize yarıyor. Klasör ve Dosya işlemlerini Directory Sınıfı ile yapacağız. Bu sınıfın metotları tamamen statiktir… Ayrıca bu dersimizde System.IO sınıfınıda inceleyeceğiz.

Şimdi Path, Directory, DirectoryInfo, File, System.IO ve FileInfo sınıflarını inceleyelim.

Directory ve DirectoryInfo klasörleri temsil eder, File ve FileInfo adından da anlaşılacağı üzere dosyaları temsil eder, Path sınıfı ise dosya ve klasörlerin yol (path) bilgisi ile ilgili işlemleri yapmak için kullanılır.
Directory ve File sınıflarından nesne üretemeyiz, tüm metotları statik olarak tanımlanmıştır. Sınıfı kurmadan direk işlem yapabiliyoruz.

İlk Önce Projemize Aşağıdaki classı ekleyelim..

using System.IO;

Aşağıdaki kodlarda en çok kullanılan metotları ele alacağız.

1. CreateDirectory Metodu : Bu metot ile klasör oluşturabiliriz.

string yol = "C:\\Program Files\\AtknUludag"
Directory.CreateDirectory(yol);

2. Delete Metodu : Bu metod klasör Silmeye Yarar;

//Eğer klasörün içinde herhangi birşey yok ise direk siler.
string yol = "C:\\Program Files\\AtknUludag";
Directory.Delete(yol);
//Eğer siz klasörün içindekilerle beraber silinmesini istiyorsanız, 2. parametreyi true olarak göndermelisiniz.
string yol = "C:\\Program Files\\AtknUludag";
Directory.Delete(yol,true);ib

3. Exist Metodu : Klasörün var olup olmadığını kontrol eder, geri dönüş tipi true ve false’tur

//Klasör var olduğundan True değerini döndürdü.
string yol = "C:\\Program Files\\AtknUludag";
MessageBox.Show(Directory.Exists(yol).ToString());
//Ayrıca Geriye Dönen True False Değerini if else ile kontrol ettirip işlem yaptırabilirsiniz.

4. GetCreationTime Metodu : Geri dönüş tipi DateTime cinsindendir. Klasörün oluşturulma tarihini döndürür.

string yol = "C:\\Program Files\\AtknUludag";
MessageBox.Show(Directory.GetCreationTime(yol).ToString());

5. GetCurrentDirectory Metodu : Projenizdeki Programın Hangi Klasörde Olduğunu Verir.

MessageBox.Show(Directory.GetCurrentDirectory().ToString());

6. GetDirectories Metodu : Belirtilen dizindeki tüm klasörleri string tipinde bir dizi ile geri döndürür.

string yol = "C:\\Program Files";
string[] klasor = Directory.GetDirectories(yol);
foreach (string i in klasor)
  {
    MessageBox.Show(i.ToString());
  }

7. GetLastAccessTime Metodu : Belirtilen klasöre en son ne zaman eriştiğini DateTime türünden geri döndürür.

string yol = "C:\\Program Files\\AtknUludag";
MessageBox.Show(Directory.GetLastAccessTime(yol).ToString());

8. System.IO Delete Metodu : Bu metot ile belirtilen dosyayı silebiliriz.

string yol = "C:\\Program Files\\AtknUludag\\dosya.exe";
System.IO.File.Delete(yol);

9. System.IO Move Metodu : Bu metot ile belirtilen klasörü belirtilen dizine taşıyabiliriz.

//Birinci Taglardaki Kısım Taşınacak klasör, ikinci tagdaki nereye taşınacağı
System.IO.Directory.Move("C:\\Program Files\\AtknUludag", "D:\\AtknUludag");

2 yorum

  1. Adem Uludağ Yanıtla

    Yaralı güzel paylaşımlar olmuş teşekkür ederim..
    Ben c# öğrenmeye başladım fakat internetten videolar ve makalelerle öğrenmeye çalışıyorum şimdilik ufak çaplı otomasyonlar yapabiliyorum cok detaylı olmayan basit şeyler ama bu dili öğrenmeyi çok istiyorum bir kaç aydır hergün birşeyler araştırıp uygulamay çalışıyorum tecrübelerie dayanarak bu konuda bir iki tavsiyede bulunabilirmisin nasıl bir yol izlemeliyim teşekkürler….

    • Atakan Yasin Uludağ YazarYanıtla

      Tek C# ile bir kalıpta kalma. Çoğu dil birbirine benziyor. Dediğin şekilde videoları izleyerek öğrenebilirsin. Öğrendiklerini yardım almadan sıfırdan kendin yapmaya çalışmalısın. Ayrıca veritabanı ile etkileşimli otomasyon programları yapmaya çalışırsan (stok takip programı gibi ufak tefek şeyler) daha iyi öğrenebilirsin.

Bir cevap yazın

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.