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.");
}
}
}
“`
Faydalı Siteler ve Dosyalar
Önemli Not: Bu yazı Google Gemini yapay zekası tarafından otomatik olarak oluşturulmuştur ve hatalı bilgiler içerebilir. Düzeltmek için iletişim sayfamızdaki formdan veya yine iletişim sayfamızda bulunan eposta adresi yoluyla bizimle iletişime geçebilirsiniz. Hata varsa hemen düzeltilmektedir.