CodeBlanks Logo Icon CodeBlanks

File.Exists ve Delete

C# kursu · Orta seviye · Ders 104/116

File.Exists ile kontrol ve File.Delete ile silme öğrenirsin.

File.Exists ile kontrol

File.Exists metodu, bir dosyanın var olup olmadığını sorgular. bool döndürür. Çağrı: if (File.Exists("veri.txt")) { ... }. Dosya yoksa false döner; hata fırlatılmaz.

Bu, dosya işlemlerinde standart bir ön kontroldür. ReadAllText çağırmadan önce Exists ile kontrol etmek, FileNotFoundException hatasını önler. Yine de çoklu iş parçacıklı (multi-thread) ortamda Exists ile Read arasında dosya silinebilir; bu yüzden yine de try/catch kullanmak daha güvenlidir.

File.Delete ile silme

File.Delete metodu, bir dosyayı siler. Dosya yoksa hata fırlatılmaz; sessizce devam eder. Çağrı: File.Delete("eski.txt");. Silinen dosya geri alınamaz; dikkatli kullan.

Silmeden önce Exists ile kontrol etmek iyi bir alışkanlıktır, ancak Delete zaten yoksa hata vermediği için bu kontrol zorunlu değildir. Dizin silmek için Directory.Delete kullanılır; bu ayrı bir konudur.

Uygulama Var mı, yoksa sil

Önce File.WriteAllText("gecici.txt", "veri"); ile dosyayı oluştur. Sonra File.Exists("gecici.txt") ile kontrol et ve sonucu Console.WriteLine ile yazdır. En son File.Delete("gecici.txt"); ile dosyayı sil ve tekrar File.Exists ile kontrol edip sonucu yazdır.

Örnek çözümü göster
Önce File.WriteAllText("gecici.txt", "veri"); ile oluştur, sonra Console.WriteLine(File.Exists("gecici.txt")); ile kontrolü yazdır, sonra File.Delete("gecici.txt"); ile sil, en son Console.WriteLine(File.Exists("gecici.txt")); ile tekrar kontrolü yazdır.
Örnek çözüm:
using System;
using System.IO;

class Program
{
    static void Main()
    {
        File.WriteAllText("gecici.txt", "veri");
        Console.WriteLine(File.Exists("gecici.txt"));
        File.Delete("gecici.txt");
        Console.WriteLine(File.Exists("gecici.txt"));
    }
}

Kendini test et

  1. Exists çağrısını tamamla

    if (File.____("veri.txt")) { Console.WriteLine("Var"); }
    Cevabı göster
    if (File.Exists("veri.txt")) { Console.WriteLine("Var"); }
  2. File.Delete olmayan dosyada?

    File.Delete("yok.txt");
    • FileNotFoundException fırlatır
    • False döndürür
    • Hiçbir şey yapmaz, hata vermez
    • Dosyayı oluşturur
    Cevabı göster

    False döndürür — Doğru. File.Delete olmayan dosyada hata fırlatmaz; sessizce devam eder.

  3. Metodu davranışına eşle

    Exists
    Var mı diye bakar
    Delete
    Siler
    ReadAllText
    Okur
    WriteAllText
    Yazar

Orta seviye bölümündeki tüm dersler