Arama butonu
Bu konudaki kullanıcılar: 1 misafir
4
Cevap
756
Tıklama
0
Öne Çıkarma
C# Veriyi .JSON Dosyasına Kaydetme Sorunu
A
9 yıl
Yarbay
Konu Sahibi

Merhaba arkadaşlar iyi akşamlar.

C# Windows Form Application uygulamasındaki bir veriyi .json dosyası olarak kaydetmede sıkıntı yaşıyorum.
Elle oluşturduğum json dosyasındaki verileri

quote:



void JSONYukle(ListView lv)
{
JavaScriptSerializer jsd = new JavaScriptSerializer();
string log = jsd.ConvertToType<string>(File.ReadAllText(Application.StartupPath + "\\skor.json"));
JObject data = JObject.Parse(log);
var items = data["oyuncular"].Children<JObject>().Select(eleman => new ListViewItem(new string[]{
(string)eleman["id"],
(string)eleman["adi"],
(string)eleman["tarih"],
(string)eleman["skor"]
})).ToArray();
lv.Items.AddRange(items);
}


metodu ile ListView a aktarabildim. Ancak ters şekilde uygulamada elde ettiğim veriyi .json dosyasına kaydederken sıkıntı yaşıyorum. Bir önceki verinin üzerine yazıyor yani dosyadaki tüm verileri silip tek veri bırakıyor hep en son ekleneni.

quote:


void JSONKaydet()
{
oyun o = new oyun();
o.OyunuOynayanlar = "OyunuOynayan";

List<Oyuncular> p = new List<Oyuncular>();
Oyuncular player = new Oyuncular { id = IDno.ToString(), adi = lblKullanici.Text, tarih = DateTime.Now.ToShortDateString(), skor = lblSkor.Text };
p.Add(player);

o.oyuncular = p;

string json = JsonConvert.SerializeObject(o, Formatting.Indented);
File.WriteAllText(Application.StartupPath + "\\skor.json", json);
}



Mavi işaretli kodda mı sıkıntı var? StackOverFlow da da epey baktım ama tam bir çözüm bulamadım.

Umarım anlatabilmişimdir.Şimdiden teşekkürler.





< Bu mesaj bu kişi tarafından değiştirildi alpmirza -- 16 Aralık 2016; 1:30:24 >

A
9 yıl
Yüzbaşı

https://msdn.microsoft.com/tr-tr/library/ms143375(v=vs.110).aspx

WriteAllText üzerine yazar, AppendAllText ekleyerek yazar.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.