C# ile JSON Dosyasına Veri Yazma ve Okuma

Admin

Herşeyi Burada Bulabilirsin
Yönetici
Administrator
Akisor
Katılım
9 Haziran 2025
Mesajlar
66
Çözümler
1
Tepkime puanı
0
Puan
6
Konum
Türkiye
Web sitesi
akisforum.com
C# JSON İşlemleri – Veri Serileştirme ve Dosyada Saklama

📌 Neden JSON?
JSON (JavaScript Object Notation), hem insanlar hem bilgisayarlar tarafından kolay okunabilen bir veri formatıdır.
C# ile JSON kullanmak:
- Ayar dosyası oluşturmak
- Uygulama içi veri kaydetmek
- Kullanıcı bilgileri tutmak için ideal bir yöntemdir.

📦 Gerekli Kütüphane
.NET Core / .NET 5+ ile gelen `System.Text.Json` sınıfını kullanacağız.
Yoksa NuGet’ten ekleyebilirsin:
Kod:
Install-Package System.Text.Json

📁 Örnek Sınıf Tanımı
C#:
public class Kullanici
{
    public string Ad { get; set; }
    public int Yas { get; set; }
    public bool AktifMi { get; set; }
}

📝 JSON Dosyasına Veri Yazma
C#:
using System.Text.Json;

var kullanici = new Kullanici
{
    Ad = "Kerim",
    Yas = 27,
    AktifMi = true
};

string jsonVerisi = JsonSerializer.Serialize(kullanici);
File.WriteAllText("kullanici.json", jsonVerisi);

📖 JSON Dosyasını Okuma
C#:
string okunanJson = File.ReadAllText("kullanici.json");
var kullanici = JsonSerializer.Deserialize<Kullanici>(okunanJson);

Console.WriteLine($"👤 {kullanici.Ad} - Yaş: {kullanici.Yas} - Aktif: {kullanici.AktifMi}");

📚 Liste Şeklinde JSON Kaydetme
C#:
var liste = new List<Kullanici>
{
    new Kullanici { Ad = "Ali", Yas = 30, AktifMi = true },
    new Kullanici { Ad = "Ayşe", Yas = 25, AktifMi = false }
};

string json = JsonSerializer.Serialize(liste, new JsonSerializerOptions { WriteIndented = true });
File.WriteAllText("kullanicilar.json", json);

⚠️ Dikkat Edilecek Noktalar
- Sınıf adları büyük harfle, özellik adları küçük harfle gider
- `WriteIndented = true` ile daha okunabilir JSON elde edilir
- `null` değerler varsayılan olarak yazılmaz

🏁 Sonuç:
JSON, modern C# uygulamalarında veri saklamanın en sade ve güçlü yollarındandır.
Dosya işlemleri ile birlikte kullanıldığında konfigürasyon, kullanıcı verisi ve geçmiş kayıtlar için birebirdir.


📚 Daha Fazla Oku:
 
Geri
Üst