İlginizi Çekebilir
  1. Ana Sayfa
  2. C Sharp

C# FileNotFoundException – Nedenleri

C# FileNotFoundException – Nedenleri
+ - 0

Merhabalar, C# FileNotFoundException – Nedenleri dersim ile Exceptions derslerime devam ediyorum. Önceki dersimde C# DirectoryNotFoundException – Nedenleri konusuna değinmiştik. Bu dersimizde FileNotFoundException özel durumuna değineceğim. DirectoryNotFoundException gibi bu özel durumunda kullanım şekli hakkında bir örnek bulamadım. Adından da anlaşılacağı gibi bir dosyanın bulunamadığında ortaya çıkan özel durumdur.

C# FileNotFoundException – Nedenleri

Devralma :  Object > Exception > SystemException > IOException > FileNotFoundException

C# FileNotFoundException – Nedenleri

Bu özel durum, bir dosya yolunun (path) geçersiz olması durumunda çıkar. Yani verdiğimiz yoldaki klasörün olmaması durumunda yaşarız. Böyle bir özel durum olduğundan önceki derslerimdeki gibi nasıl kullanılır? sorusuna cevap verecek bir örnek bulamadım. Mantıksız yollar ile örnekler elbette yapılabilir ancak bu özel durumun ortaya çıkması mantığı ile aynı mantıkta bir işlem aklıma gelmedi.

DirectoryNotFoundException özel durumu gibi görünse de aslında farklıdır. Eğer verilen yol değişkeninde hem dosya hem klasör yok ise öncelikle DirectoryNotFoundException hatası verilir. Eğer klasörler mevcut, dosya yok ise o zaman FileNotFoundException özel durumu döner.

Bu özel durumun tipik bir çıktısı vardır.

‘XXXXX’ ‘dosyası bulunamadı.

Aşağıdaki örnekte bu özel durumu çıkartalım ve kontrol edelim.

        #region FileNotFoundException Çıkarma ve Yakalama Örneği
        private void btn_FileNotFoundException_Click(object sender, EventArgs e)
        {
            string path = "C:\\asd.txt";
            string path2 = "D:\\asd.txt";
            try
            {
                File.Copy(path, path2);
            }
            catch (FileNotFoundException ex)
            {
                txt_cikti.Text += ex.GetType().Name + ":" + ex.Message;
            }
        }
        #endregion
            {
                File.Copy(path,path);
            }
            catch (FileNotFoundException ex)
            {
                txt_cikti.Text += ex.GetType().Name + ":" + ex.Message;
            }
        }
        #endregion

NOT: Dersi için hata çıkarmaya çalışırken, File.Delete() metodunun dosya olmasa bile exception dönmediğini fark ettim. :D 

Burada C dizinindeki asd.txt adlı D dizinine  kopyalamaya çalıştık. Ancak böyle bir dosya olmadığı için FileNotFoundException özel durumu dönecektir.

 


C# FileNotFoundException – Nedenleri dersimiz de bu kadardı arkadaşlar.

Tüm Exceptions derslerime bağlantıdan ulaşabilirsiniz.

C Sharp Eğitim Seti eğitimi sayfasına gitmek için tıklayınız.

Derslerime özel olarak hazırladığım Github Projeme buradan ulaşabilirsiniz… Bu dersim Github projemde yerini almıştır. Tüm Exception adı altında eklediğim dersleri Github projeme ekleyeceğim.

Sağlıcakla ve takipte kalın. ?

Bu yazıya tepkiniz ne oldu?

Yazar Hakkında

Lise Ağ Sistemleri ve Yönetimi bölümü, üniversite Bilgisayar Programcılığı bölümü Ön Lisans, Yönetim Bilişim Sistemleri Lisans öğrenimi aldım. Askerlik görevimi tamamladım. Uzmanlık alanım; C# ve SQL Programlama dilleri ile müşteri odaklı, kullanıcı dostu ERP ve CRM gibi sistemleri geliştirmektir. Ayrıca şuanda PHP ve MYSQL alanında projeler geliştirmekteyim. C++, Phyton, Xamarin, MVC gibi konuları öğrenmek ve kendimi geliştirme çabası içerisindeyim. Discord için: https://discord.gg/FBxZeHu9

Değerli yorumlarınızı bekliyorum. :)