c# listview i kaydetme ve geri yükleme

Bu konuyu okuyanlar

lebib

Asistan
Katılım
24 Mart 2016
Mesajlar
278
Reaksiyon puanı
56
Puanları
28
Arkadaşlar,abiler,ablalar elimde 5 columns lu bir listview var bunun içine güzel güzel verileri kaydediyorum sıkıntı yok ama uygulamayı kapatınca veriler kayboluyor. Uygulamaya save/load sistemi nasıl ekleyebilirim ??
@Ben Kenobi
 

Ben Kenobi

Müdavim
Katılım
6 Kasım 2011
Mesajlar
7,336
Reaksiyon puanı
3,155
Puanları
113
Profesyonel milyonlarca veriyi kaydedip silebilecek birşey lazımsa database(veri tabanı) konusuna bakmalısın.
Değilse standart dosyaya veri yazma ve dosyadan veri okumaya bakabilirsin.
--- Gönderi Güncellendi ---
Ekleme: C#'ta listview yok, o özellik Winforms'a ait, alternatif olarak WPF de kullanılabilir.
 

lebib

Asistan
Katılım
24 Mart 2016
Mesajlar
278
Reaksiyon puanı
56
Puanları
28
Profesyonel milyonlarca veriyi kaydedip silebilecek birşey lazımsa database(veri tabanı) konusuna bakmalısın.
Değilse standart dosyaya veri yazma ve dosyadan veri okumaya bakabilirsin.
text dosyasına kayıt ettirip oradan tekrar okuyabilirmiyim yoksa illaki excel felan mı olması lazım
 

Ben Kenobi

Müdavim
Katılım
6 Kasım 2011
Mesajlar
7,336
Reaksiyon puanı
3,155
Puanları
113
ReadAllLines, WriteAllLines, ReadLine, WriteLine gibi birşeyler olması lazım, onlarla yapabilirsin.
Bu sayede her bir veriyi yeni bir satıra yazarak ayırabilirsin.
 

lebib

Asistan
Katılım
24 Mart 2016
Mesajlar
278
Reaksiyon puanı
56
Puanları
28
İnternette işe yarar bir örnek arıyorum da pek fazla bir şey bulamadım daha. Dediklerinize bakıyorum şimdi
 

Ben Kenobi

Müdavim
Katılım
6 Kasım 2011
Mesajlar
7,336
Reaksiyon puanı
3,155
Puanları
113
Bunun dışında biraz daha profesyonel olarak veri grupları arasında farklı bir ayraç kullanabilirsin.
Misal farklı grup veriler için yeni bir satır, aynı grup verileri ayırt edebilmek için ise misal virgül kullanırsın.
Bu verileri stringe dönüştürüp for döngüsünde aynı grup veriler arasına virgül eklersin, farklı grup veriler arasına da "\n" eklersin.
Yazarken verileri yazdığın sıra ile, okuma işlemini de gerçekleştirirsin.
 

lebib

Asistan
Katılım
24 Mart 2016
Mesajlar
278
Reaksiyon puanı
56
Puanları
28
Bunun dışında biraz daha profesyonel olarak veri grupları arasında farklı bir ayraç kullanabilirsin.
Misal farklı grup veriler için yeni bir satır, aynı grup verileri ayırt edebilmek için ise misal virgül kullanırsın.
Bu verileri stringe dönüştürüp for döngüsünde aynı grup veriler arasına virgül eklersin, farklı grup veriler arasına da "\n" eklersin.
Yazarken verileri yazdığın sıra ile, okuma işlemini de gerçekleştirirsin.
hocam basit bir örnek kod verebilir misiniz
 

Ben Kenobi

Müdavim
Katılım
6 Kasım 2011
Mesajlar
7,336
Reaksiyon puanı
3,155
Puanları
113
Şunlar veri seti olsun.
Kod:
int oyuncu1A, oyuncu1B, oyuncu1C;
int oyuncu2A, oyuncu2B, oyuncu2C;

Yazarken
Kod:
using(StreamWriter writetext = new StreamWriter("Ayarlar.txt"))
{
    writetext.WriteLine(oyuncu1A.ToString() + "," + oyuncu1B.ToString() + "," + oyuncu1C.ToString());
    writetext.WriteLine(oyuncu2A.ToString() + "," + oyuncu2B.ToString() + "," + oyuncu2C.ToString());
}

Okurken
Kod:
using(StreamReader readtext = new StreamReader("Ayarlar.txt"))
{
    string[] oyuncu1 = readtext.ReadLine().Split(",");
    string[] oyuncu2 = readtext.ReadLine().Split(",");

    oyuncu1A = Int32.Parse(oyuncu1[0]);
    oyuncu1B = Int32.Parse(oyuncu1[1]);
    oyuncu1C = Int32.Parse(oyuncu1[2]);

    oyuncu2A = Int32.Parse(oyuncu2[0]);
    oyuncu2B = Int32.Parse(oyuncu2[1]);
    oyuncu2C = Int32.Parse(oyuncu2[2]);
}
 

lebib

Asistan
Katılım
24 Mart 2016
Mesajlar
278
Reaksiyon puanı
56
Puanları
28
Şunlar veri seti olsun.
Kod:
int oyuncu1A, oyuncu1B, oyuncu1C;
int oyuncu2A, oyuncu2B, oyuncu2C;

Yazarken
Kod:
using(StreamWriter writetext = new StreamWriter("Ayarlar.txt"))
{
    writetext.WriteLine(oyuncu1A.ToString() + "," + oyuncu1B.ToString() + "," + oyuncu1C.ToString());
    writetext.WriteLine(oyuncu2A.ToString() + "," + oyuncu2B.ToString() + "," + oyuncu2C.ToString());
}

Okurken
Kod:
using(StreamReader readtext = new StreamReader("Ayarlar.txt"))
{
    string[] oyuncu1 = readtext.ReadLine().Split(",");
    string[] oyuncu2 = readtext.ReadLine().Split(",");

    oyuncu1A = Int32.Parse(oyuncu1[0]);
    oyuncu1B = Int32.Parse(oyuncu1[1]);
    oyuncu1C = Int32.Parse(oyuncu1[2]);

    oyuncu2A = Int32.Parse(oyuncu2[0]);
    oyuncu2B = Int32.Parse(oyuncu2[1]);
    oyuncu2C = Int32.Parse(oyuncu2[2]);
}
Eyvallah hocam . Çook çook teşekkür ederim
 
Üst