Arama butonu
Bu konudaki kullanıcılar: 1 misafir
4
Cevap
757
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.



A
9 yıl
Yarbay
Konu Sahibi

O zaman da bu şekilde oluyor direk ekliyor .json dosyası okunamıyor
quote:


{
"OyunuOynayanlar": "OyunuOynayan",
"oyuncular": [
{
"id": "280",
"adi": "dddw",
"tarih": "16.12.2016",
"skor": "30"
}
]
}{
"OyunuOynayanlar": "OyunuOynayan",
"oyuncular": [
{
"id": "804",
"adi": "blabla",
"tarih": "16.12.2016",
"skor": "0"
}
]
}



J
9 yıl
Yüzbaşı

Denemedim ama önce txt uzantılı bir dosyaya ekle daha sonra .json çevirmeyi deneyebilirmisin.



A
9 yıl
Yarbay
Konu Sahibi

Baya uğraştım ama sonunda hallettim teşekkürler arkadaşlar.



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.