C# Json İşlemleri
Merhabalar ,
Bu yazımda C# ta Json data oluşturma ve yazma işlemlerinden bahsedeceğim ,
Örnek Uygulamaya github hesabımdan ulaşabilirsiniz : https://github.com/salihseker/C-Json-Islemleri
Json Nedir?
Json, Javascript uygulamaları için oluşturulmuş bir veri formatıdır. Javascript Object Notation’ın kısaltmasıdır. Json’ın çıkış amacı veri transferlerinde verilerin XML’den daha az yer kaplamasını sağlamaktır. Şu an sadece Javascript uygulamalarında değil, yazılım geliştirmede kullanılan bir çok teknolojide Json formatındaki veriler tercih edilmektedir.
C# ta json işlemlerimizi hızlıca ve kolayca yapmamıza yardımcı olan Newtonsoft.Json.dll ini kullanacağız bu dll indirip projemize referans olarak ekleyebilir veya Nuget tan projemize ekleyebiliriz.
Nuget eklemek için : Newtonsoft.Json diye arattırırp Instal dediğimizde projemize eklenecektir.
Projemize dll ekledikten sonra işlemlerimize devam edebiliriz.
Öncelikle projemizde kullanmak için Kullanici adından bir class oluşturuyoruz.
//www.salihseker.com class Kullanici { public Guid ID { get; set; } public string Isim { get; set; } public string Soyisim { get; set; } public int Numara { get; set; } public string Github { get; set; } } //
Json Oluşturma:
burada yaptığımız işlem Kullanici listesi’ni json formatına çevirmek ve oluşan json string i dosya olarak kaydetmektir.
işlemi yapan asıl kodumuz : Newtonsoft.Json.JsonConvert.SerializeObject(Kullaniciler);
//www.salihseker.com private static void JsonOlusturma() { List<Kullanici> Kullaniciler = new List<Kullanici>(); Kullanici k1 = new Kullanici(); k1.ID = Guid.NewGuid(); k1.Isim = "Salih"; k1.Soyisim = "SEKER"; k1.Numara = 1; k1.Github = "github.com/salihseker"; Kullaniciler.Add(k1); Kullanici k2 = new Kullanici(); k2.ID = Guid.NewGuid(); k2.Isim = "Kerami"; k2.Soyisim = "Ozsoy"; k2.Numara = 2; k2.Github = "github.com/keramiozsoy"; Kullaniciler.Add(k2); Console.WriteLine(@"Bilgileriniz Json Formatında D:\JsonIslemlerim\Kullaniciler.json olarak kayıt edilecektir."); if (Directory.Exists(@"D:\JsonIslemlerim\")) { // ilgili klasor var ise herhangi bir işlem yapmıyoruz. } else { Directory.CreateDirectory(@"D:\JsonIslemlerim\"); } string JsonKullaniciler = Newtonsoft.Json.JsonConvert.SerializeObject(Kullaniciler); File.WriteAllText(@"D:\JsonIslemlerim\Kullaniciler.json", JsonKullaniciler); Console.WriteLine("Json Export işlemi tamamlandı"); } //
Sonuç :
[ { "ID": "8fbe5b22-8fc9-4012-9f56-a27f96fc2efe", "Isim": "Salih", "Soyisim": "SEKER", "Numara": 1, "Github": "github.com/salihseker" }, { "ID": "61ad7f03-3583-4201-83fe-81621f66b67b", "Isim": "Kerami", "Soyisim": "Ozsoy", "Numara": 2, "Github": "github.com/keramiozsoy" } ]
Json Okuma:
oluşturmuş olduğumuz json dosyamızı okumak için file işlemlerindeki şekilde json dosyasını okuyup , daha sonrada newtonsoft ile deserialize işlemi ile Kullanici nesnesine listesine dönüştüreceğiz ve oluşan listeyi ekrana yazdıracağız.
// private static void JsonOkuma() { string JsonOkunanData = File.ReadAllText(@"D:\JsonIslemlerim\Kullaniciler.json"); List<Kullanici> okunanJson = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Kullanici>>(JsonOkunanData); foreach (var item in okunanJson) { Console.WriteLine("ID : " + item.ID); Console.WriteLine("Isim : " + item.Isim); Console.WriteLine("Soyisim : " + item.Soyisim); Console.WriteLine("Numara : " + item.Numara); Console.WriteLine("Github : " + item.Github); Console.WriteLine(); } Console.ReadLine(); } //
Sonuç :
Umarım faydalanırsınız , ayrıca Newtonsoft.Json dll json işlemleri için yardımcı olacak farklı methodlar bulunmaktadır incelemenizi tavsiye ederim.
İyi Çalışmalar 🙂 – Salih ŞEKER.