C# ile Dosyaya Yeni Kayıt Ekleme: w+a Modu
Dosya işlemleri, programlamada yaygın olarak kullanılan bir görevdir. C# dilinde, File
sınıfı, dosya işlemlerini gerçekleştirmek için çeşitli yöntemler sağlar. Bu yöntemlerden biri de w+a
modudur.
w+a Modu
w+a
modu, bir dosyayı hem yazma hem de ekleme modunda açar. Bu modda, dosya yoksa yeni bir dosya oluşturulur ve dosya varsa mevcut içeriği silinir. Ardından, dosyanın sonuna yeni veriler eklenebilir.
w+a
modunun sözdizimi şu şekildedir:
c#
FileStream fs = new FileStream(dosyaYolu, FileMode.OpenOrCreate, FileAccess.Write, FileShare.None);
Burada:
dosyaYolu
: Açılacak dosyanın yoludur.FileMode.OpenOrCreate
: Dosya yoksa yeni bir dosya oluşturur, varsa mevcut dosyayı açar.FileAccess.Write
: Dosyaya yazma erişimi sağlar.FileShare.None
: Dosyayı diğer işlemler tarafından paylaşılmaz.
Yeni Kayıt Ekleme
w+a
modunda açılan bir dosyaya yeni kayıt eklemek için StreamWriter
sınıfı kullanılabilir. StreamWriter
sınıfı, metin verilerini bir dosyaya yazmak için kullanılır.
Yeni kayıt ekleme sözdizimi şu şekildedir:
c#
using (StreamWriter sw = new StreamWriter(fs))
{
sw.WriteLine("Yeni kayıt");
}
Burada:
fs
:w+a
modunda açılanFileStream
nesnesidir.using
ifadesi,StreamWriter
nesnesinin otomatik olarak kapatılmasını sağlar.sw.WriteLine("Yeni kayıt")
: Dosyanın sonuna “Yeni kayıt” satırını yazar.
Örnek
Aşağıdaki örnek, w+a
modunda bir dosyaya yeni kayıt ekler:
“`c#
using System;
using System.IO;
namespace DosyaIslemleri
{
class Program
{
static void Main(string[] args)
{
string dosyaYolu = @”C:\test.txt”;
// Dosyayı w+a modunda aç
using (FileStream fs = new FileStream(dosyaYolu, FileMode.OpenOrCreate, FileAccess.Write, FileShare.None))
{
// Dosyaya yeni kayıt ekle
using (StreamWriter sw = new StreamWriter(fs))
{
sw.WriteLine("Yeni kayıt");
}
}
Console.WriteLine("Yeni kayıt eklendi.");
}
}
}
“`