ASP.NETC#EğitimYazılım

ASP.NET Dosyalama İşlemleri (Dosya Oluşturma-Listeleme-Silme-Okuma-Taşıma-Öznitelik Atama)

ASP.NET Dosyalama İşlemleri yapmamız mümkündür.Dosyalama işlerinde dosyaya bilgi yazma, silme, taşıma, kopyalama vb. işlemler yapılabilir. Dosyalama işlemlerini yapmadan önce kod sayfamıza using.System.IO uzayını eklememiz gerekir.

ASP.NET Dosyalama İşlemleri

Dosyayı Oluşturmak

Dosya işlemlerini yapabilmek için yine C# kodlarımıza System.IO kütüphanesini eklemeyi unutmuyoruz. C# kodlarıyla dosya oluşturma işlemlerinde File.Create() fonksiyonunu kullanırız. Örnek bir dosya oluşturalım;

İkinci olarak FileInfo() sınıfı ile de dosya oluşturulabilir. Bu sınıfa da kısa bir örnek verelim.

Dosyalamada dosyanın özelliklerine erişebiliriz. Bunu oluşturduğumuz fileinfo sınıfı örneğinde gösterelim.

fi.Extension //dosya uzantısını verir
fi.CreationTime //dosyanın oluşturulma tarihini verir
fi.DirectoryName //dosyanın bulunduğu klasörün path ini verir
fi.FullName //dosyanın adını verir
fi.Name //dosya adını uzantısı ile birlikte verir

 

Dosya bilgilerini görüntüleme işlemlerinde Html bloğunda dosya bilgilerini görüntülemek için Listbox nesnesi ekliyoruz.

HTML BLOĞU

Listbox ve butonumuzu nesnemizi sürükle-bırak yöntemiyle webformumuza eklememiz durumunda kod kendiliğinden oluşacaktır. 🙂

      Ardından  bilgileri gösterebilmemiz için gerekli kod bloğunu yazıyoruz.

KOD BLOĞU(form load’a yazdık)

EKRAN ÇIKTISI

       Biraz önce oluşturduğumuz dosyanın bilgilerini türünü oluştuğu süreyi hepsinin bilgisini çekerek listbox’a listeledik.

Dosya okuma Dosya yazma

ASP.NET Dosyalama İşlemleri Dosya içine veri yazmak için genelde StreamWriter nesnesi işimizi görür.StreamWriter nesnesi ile string,int,char vs.. her tipde veriyi yazabiliriz.

 

Dosya okuma işlemi için ise StreamReader sınıfından faydalanabiliriz.StreadReader sınıfı ile bütün dosyayı 1 defada okuyabileceğimiz gibi satır satır veya istediğimiz byte kadar da okuyabiliriz.

Dosyayı satır satır okumak için;

Şimdi bir dosya oluşturma örneği verelim;

EKRAN ÇIKTISI

OLUŞTURULAN DOSYA

Evet arkadaşlar sadece kodları kullanarak dosya oluşturup içine istediğimiz bilgileri giriş yaptık.

Dosya İçindekileri Listeleme

Butona basdığımız zaman klasördeki dosyaları listbox içerisine alacağız dosyalar üzerinde işlem yapabilmek için System.IO kütüphanesini projemize ekliyoruz ekliyoruz klasördeki dosyaları alabilmek için Directory.GetFiles komutunu kullanıyoruz örneğimizi inceleyelim.

HTML BLOĞU

1 Label 1 textbox 1 buton 1 listbox oluşturuyoruz.

Sürükle bırak yaparsak kodlar otomatik dolucaktır.

KOD BLOĞU

EKRAN ÇIKTISI

Öncelikle page load  yani ilk sayfa yüklemesinde gelen ekran görüntümüzü inceleyelim;

Şimdide Butona tıkladıktan sonra projemizin dosyasında olanları listboxa  listeliyoruz.

Dosya Silme

ASP.NET Dosyalama İşlemleri Dosya üzerinde çeşitli işlemler yapabiliriz bunlardan biride silme işlemidir.Bu işlemi yapmadan önce dikkat etmemiz gereken hususlar mevcuttur.Örnek bir dosya silme kodu;

Kodu direk kopyala yapıştır yaparsanız çalışmayabilir.Öncelikle mantığını anlamak gerekir.Örnek bir hata;

ERROR:  Additional information: Could not find a part of the path ‘D:\Users\rakbuz\Documents\Visual Studio 2015\WebSites\WebSite4\resimler\Çöl.jpg’.

Burada hata olarak bize belirtilen klasör yolunu bulamadığını söyledi.Silmek istediğimiz dosyanın klasör yolunu dosya özelliklerinden öğrenebiliriz yada arama çubuğuna sağ tıklayıp adres kısayolunu kopyala diyebiliriz bunun için metotlarda mevcuttur.

 Dosya Taşımak

Programımız içinde dosya taşımamızı gerektiren durumlar olabilir.Çeşitli yöntemler mevcuttur.System.IO kütüphanesini kullanarak aşşağıdaki şekilde yapabiliriz.

Örnek:

Burada 1. parametre olarak taşınacak dosyanın yolunu ve adını, 2. parametre olarak hangi klasöre taşınacağını belirtiyoruz.

Dosya Kopyalamak

ASP.NET Dosyalama İşlemleri Dosyalarımızda kopyalama işlemi yapabilmek için aşağıdaki adımları izleyebiliriz.

Örnek:

Burada 1. parametre olarak kopyalanacak dosyanın yolunu ve adını, 2. parametre olarak hangi klasöre hangi isimle kopyalanacağı,aynı isimlede kopyalayabiliriz ve 3. parametre olarak hedef klasörde aynı isimde bir dosya mevcut ise dosyanın üzerine yazılıp yazılmayacağını belirtiyoruz. True değeri, üzerine yazılmayı aktif eder.

Dosyaya Öznitelik Atamak

Dosyalarımızda çeşitli özellikler bulunmasını isteyebiliriz. Öznitelik atarken 2. parametre olarak IO.FileAttributes. tanımından sonra Archive (Arşiv), Hidden (Gizli), ReadOnly (Salt Okunur), System (Sistem) vb. özellikleri atayabiliriz.

Örnek:

burda öznitelik atarız
Dosyanın var olup olmadığını kontrol etmek :

Dosyanın var olup olmadığını aşağıdaki kod bloğumuzla öğrenebiliriz.

Dosyalama Metotları

Oluşturucular

 

ADAçıklama
FileInfo(String)Yeni bir örneğini başlatır FileInfo bir dosya yolu için sarmalayıcı görevi gören sınıf.

 

Özellikler

 

ADAçıklama
AttributesAlır veya ayarlar için geçerli bir dosya veya dizin öznitelikleri.(Devralındığı yer: FileSystemInfo.)
CreationTimeAlır veya ayarlar geçerli dosya veya dizin oluşturma zamanı.(Devralındığı yer: FileSystemInfo.)
CreationTimeUtcAlır veya geçerli dosya veya dizin oluşturma süresinin Eşgüdümlü Evrensel Saat (UTC) ayarlar.(Devralındığı yer: FileSystemInfo.)
DirectoryÜst dizini örneğini alır.
DirectoryNameDizinin tam yolu temsil eden bir dize alır.
ExistsBir dosyanın mevcut olup olmadığını belirten bir değer alır.(FileSystemInfo.Exists öğesini geçersiz kılar.)
ExtensionDosya uzantısı bölümünü temsil eden dizeyi alır.(Devralındığı yer: FileSystemInfo.)
FullNameDizinin veya dosyanın tam yolunu alır.(Devralındığı yer: FileSystemInfo.)
IsReadOnlyAlır veya geçerli dosya salt okunur belirleyen bir değer ayarlar.
LastAccessTimeSaati alır veya geçerli dosya veya dizin son erişildiği ayarlar.(Devralındığı yer: FileSystemInfo.)
LastAccessTimeUtcSaati alır veya, Eşgüdümlü Evrensel geçerli dosya veya dizin son erişildiği saat (UTC) ayarlar.(Devralındığı yer: FileSystemInfo.)
LastWriteTimeSaati alır veya zaman geçerli dosya veya dizin son için yazıldığı ayarlar.(Devralındığı yer:FileSystemInfo.)
LastWriteTimeUtcSaati alır veya geçerli dosya veya dizin son için yazıldıktan sonra, Eşgüdümlü Evrensel Saat (UTC) ayarlar.(Devralındığı yer: FileSystemInfo.)
NameDosyanın adını alır.(FileSystemInfo.Name öğesini geçersiz kılar.)
LengthGeçerli dosyanın bayt cinsinden boyutu alır.

 

Yöntemler

Create()Bir dosya oluşturur.
CreateObjRef(Type)Uzak bir nesne ile iletişim kurmak için kullanılan bir proxy oluşturmak için gerekli tüm bilgileri içeren bir nesne oluşturur.(Devralındığı yer:MarshalByRefObject.)
CreateText()Oluşturur bir StreamWriter bir metin dosyasına yazar.
Decrypt()Geçerli hesap kullanılarak şifrelenmiş bir dosya şifresini çözer Encryptyöntemi.
Delete()Bir dosya kalıcı olarak siler.(FileSystemInfo.Delete() öğesini geçersiz kılar.)
Encrypt()Bir dosya yalnızca dosya şifrelemek için kullanılan hesap şifresini böylece şifreler.
Equals(Object)Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.(Devralındığı yer: Object.)
GetAccessControl()Alır bir FileSecurity Geçerli tarafından açıklanan dosyası için erişim denetim listesi (ACL) girdileri yalıtan nesne FileInfo nesne.
GetType()Mevcut örnek için Type alır.(Devralındığı yer: Object.)
MoveTo(String)Belirtilen bir dosya, yeni bir dosya adı belirtme seçeneğiniz sağlayan yeni bir konuma taşır
Open(FileMode)Bir dosya belirtilen modunda açar.
OpenRead()Salt okunur oluşturur FileStream.
OpenText()Oluşturur bir StreamReader ile varolan bir metin dosyasından okur UTF8 kodlama.
OpenWrite()Salt yazılır oluşturur FileStream.
Refresh()Nesne durumunu yeniler.(Devralındığı yer: FileSystemInfo.)
Replace(String, String)Belirtilen bir dosyanın içeriğini geçerli tarafından açıklanan dosya ile değiştirir FileInfo özgün dosyayı silmek ve değiştirilen dosyanın bir yedeği oluşturma nesne

 

Dersimiz bu kadar arkadaşlar umarım herkes ASP.NET Dosyalama İşlemleri dersini hem okuyarak hemde okurken uygulayarak öğrenmiştir.Emeğe saygı olarak yorum yapar yada paylaşırsanız çok mutlu olurum.Kendinize iyi bakın.

 

Microsoft teşekkürlerMicrosoft

Etiketler

Ramazan Şerif

Selamun Aleyküm Adım Ramazan Şerif Akbuz. Bilişime olan merakım ortaokul yıllarımda başladı.7.Sınıfta Türkiye Eğitim Gönülleri Vakfı aracılığı ile girdiğim Legorobot yarışmasında Türkiye de ilk 20 ye girdik.Bilişime olan heyecanım lise yıllarımda da devam etti.Liseyi Veritabanı Programcılığı bölümünde okudum.Matematiğim zayıftı bende 2 yıllık Omü bilgisayar programcılığına geçiş yaptım.Okulu başarıyla bitirdim.2 Yıldır bir yandan Freelance olarak çalışıyor , bir yandanda iş arıyorum.Bakdım olacağı yok birazda kendimi geliştirme kararı aldım.DGS ile Fırat Üniversitesi Yazılım Mühendisliğine geldim.Maceranın devamında bir baltaya sap olabilmek dileğiyle "Zaman zam anıdır Gülüşüme sende gül üşüme"

İlgili Makaleler

Bir Cevap Yazın

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

Başa dön tuşu
Kapalı
%d blogcu bunu beğendi: