C# FileStream Nesnesi Özellikleri ve Metotları – Ahmet Cansever
Salı , 24 Ocak 2017
Anasayfa » C# » C# FileStream Nesnesi Özellikleri ve Metotları

C# FileStream Nesnesi Özellikleri ve Metotları

Bu yazımızda FileStream nesnesi, FileStream nesnesinin Özellikleri ve Metotları ile ilgili bilgiler vererek bu özellik ve metotların kullanımıyla ilgili bazı küçük örnekler gerçekleştireceğiz.

FileStream nesnesi yeni bir dosya oluşturmak için kullanılmaktadır. FileStream nesnesini kullanabilmek için;

kütüphanesi projeye dahil edilmelidir. Kullanımı aşağıdaki gibidir.

Şimdi bu parametrelerin alabileceği değerleri inceleyelim.

FileMode :

Dosya açılış şekillerini belirler.

Append : Dosyayı açarak dosyanın sonuna ekleme yapmak amacıyla kullanılır. Eğer dosya yoksa oluşturulur.
Create : Yeni bir dosya oluşturulmak istendiğinde kullanılır. Eğer aynı isimde bir dosya bulunuyorsa üzerine yazılır.
CreateNew : Yeni dosya oluşturmak için kullanılır. Eğer dosya mevcutsa hata meydana gelir.
Open : Dosyayı açmak için kullanılır.
OpenOrCreate : Belirtilen dosya varsa açılır, yoksa yeni dosya oluşturulur.
Truncate : Belirtilen dosya açılarak içindeki bilgiler silinir.

FileAccess :

Dosya erişim şekillerini belirler.

Read : Dosyayı okumak üzere açar.
Write : Dosya sadece yazmak üzere açılır.
ReadWrite : Dosyayı okunmak ve yazmak amacıyla açar.

FileShare :

Dosya paylaşım şekillerini belirler.

None : Dosya kapatılana kadar başka işlem tarafından açılmasını engeller.
Read : Dosya açıkken başka işlemler tarafından açılıp okunabilmesi sağlanır.
Write : Dosya açıkken başka işlemler tarafından açılıp yazılabilmesini sağlar.
ReadWrite : Dosya açıkken dosyanın açılıp okunup yazılabilmesi sağlanır.

FileOptions :

Dosya seçenekleri ayarlanır.

None : Herhangi bir özellik içermez.
WriteThrough : Sistemin herhangi bir arabellek tarafından doğrudan disk üzerine yazılacağını gösterir.
Asynchronous : Bir dosyanın asenkron olarak okuma ve yazma için kullanılabileceğini ayarlar.
RandomAccess : Dosyaya rasgele erişilebileceğinigösterir. Örnek olarak bir önbellek dosyasını optimize etmek için kullanılabilir.
DeleteOnClose : Dosyanın kullanımda olmadığı zaman otomatik olarak silineceğini gösterir.
Encrypted : Dosyanın şifrelendiğini ve şifrelemede kullanılan kullanıcı hesabıyla çözülebileceğini gösterir.

Şimdi de FileStream Nesnesinin bazı özelliklerine bakalım.

CanRead : Aktif stream nesnesinin okumayı destekleyip desteklemediği belirlenir.
CanSeek : Aktif stream nesnesinin erişimi destekleyip desteklemediği ayarlanır.
CanTimeout : Aktif stream nesnesinin zaman aşımı olayını destekleyip desteklemediği ayarlanır.
CanWrite : Aktif stream nesnesinin yazmayı destekleyip desteklemediği belirlenir.
Handle : Aktif stream nesnesi için işletim sistemi tarafından üretilen Handle numarasını belirtir.
IsAsync : Aktif stream nesnesinin eşzamanlı ya da eşzamansız açılıp açılmadığını belirtir.
Length : Aktif stream nesnesinin boyutunu verir.
Name : Aktif stream nesnesinin ismini verir.
Position : Aktif stream nesnesinin pozisyonunu verir.
ReadTimeout :Zaman aşımına uğramadan önce milisaniye cinsinden stream nesnesinin ne kadar süre ile okunabileceği belirlenir.
WriteTimeout : Zaman aşımına uğramadan önce milisaniye cinsinden stream nesnesinin ne kadar süre ile yazılabileceği belirlenir.

FileStream Nesnesinin Metotları ise şunlardır.

BeginRead : Okuma işlemini başlatır.
BeginWrite : Yazma işlemini başlatır.
Close : Açık olan nesneyi kapatır.
CreateWaitHandle : WaitHandle nesnesi ataması yapar.
Dispose : Stream nesnesini siler.
EndRead : Okuma işlemini sonlandırır.
EndWrite : Yazma işlemini sonlandırır.
Equals : Belirtilen nesnenin geçerli nesneye eşit olup olmadığı bilgisini verir.
Finalize : Stream işlemi için ayrılmış kaynakları serbest bırakır.
Flush : Tampondaki bilgilerin boşaltılmasını ve stream dosyasının güncellenmesini sağlar.
GetType : Geçerli stream nesnesinin tipini bulur.
Lock : FileStream nesnesinin diğer işlemler tarafından değiştirilmesini engeller.
Read : Stream nesnesinden byte bloğunu okur ve bir tampon içerisine yazar.
ReadByte : Stream nesnesinden 1 byte okur ve 1 byte sonraki pozisyona ilerler.
Seek : Verilen değerin stream nesnesi içindeki konumunu belirler.
SetLength : Stream nesnesinin uzunluğunu belirler.
ToString : Geçerli nesneyi string türüne çevirir.
Unlock : FileStream nesnesine diğer işlemler tarafından erişilebilmesini sağlar.
Write : Tampon içerisinden byte bloğunu okuyarak yazar.
WriteByte : Stream nesnesi içindeki geçerli pozisyona bir byte yazar.

Şimdi FileStream nesnesi ve StreamWriter metodunu kullanarak Console uygulamasında belirlediğimiz bir txt dosyasına veri girişi yapalım.

kodlarımızı çalıştıralım.

streamwriter_1

Veri girişi yaptığımızda D: sürücüsünde deneme.txt dosyası varsa üstüne ekleme yapacak, eğer deneme.txt dosyasını bulunamazsa oluşturularak ekleme yapılacaktır. Bir kaç giriş yaptıktan sonra deneme.txt dosyamızı açıp kontrol ediyoruz.

streamwriter_2

Burada Write metodu ve WriteLine metodu kullanılabilir. Aynı Console.Write ve WriteLine da olduğu gibi yan yana ve alt alta eklenmesi sağlanabilir. Biz burada sw.WriteLine satırı ile girişlerin alt alta yazdırılmasını sağlamış olduk.

Şimdide aynı dosyadan okuma işlemi gerçekleştireceğiz.

Burada kullanmış olduğumuz ReadtoEnd metodu ile dosya sonuna kadar okuma işlemi gerçekleştirmiş olduk. Ekran çıktımız aşağıdaki gibi olacaktır.

streamwriter_3

ReadtoEnd metodu dışında Read,ReadBlock ve ReadLine metotlarınıda kullanabiliriz.

Read metodu ile bir yada birden fazla karakter okunabilir.
ReadLine metodu ile bir ya da birden fazla satır okunabilir.
ReadBlock metodu ile kaç karakter okunabileceği,okumaya başlanacak karakterin index numarası gibi parametreler kullanılabilir.

Şimdi ReadLine metodunu kullanarak Readto End metodunun yaptığı işlemi yapalım. Yani dosya sonuna kadar okuma işlemi gerçekleştirelim.
Kodlarımız şu şekilde olacaktır.

Ekran çıktımız değişmeyecektir.

streamwriter_3

Şimdi de ReadBlock metodu ile ilk 5 karakteri okuyalım.

Hakkında Ahmet C

Yorum Yap

Wordpress Tema indir