Witam. Próbuje zrobić zapisanie wszystkich elementów z listview do settings, lecz nie mogę dojść do tego jak zrobić aby wszystko co tam się znajduje zostało zapisane, udało mi się tylko zapisać pierwszą linijkę z 3 kolumn, nawet jeżeli mam 4 linijki w tych 3 kolumnach to wczytuje mi tylko jedną :/. Jeżeli wiecie jak zapisać wszystkie elementy, nie tylko linijke lub kolumnę to proszę o pomoc, z góry dziękuje !
Możesz np. tak.. dość proste rozwiązanie ale powinno wystarczyć:
using (StreamWriter outfile = new StreamWriter("plik.txt"))
{
for (int i = 0; i < listview.items.count; i++)
{
for (int j = 0; j < listview.columns.count; j++)
{
outfile.Write(listview.items[i].subitem[j].text+"\r\n");
}
}
}
(takie tam naskrobane na szybko)
Odczytujesz analogicznie
A mógłbyś przestawić kod jak wczytać później zapisane w taki sposób dane?
using (StreamReader sr = new StreamReader("plik.txt"))
{
while (! eof ...)
{
listviewitem item = new ....
for (int j = 0; j < listview.columns.count; j++)
{
string in = sr.ReadLine();
item.subitems.add(in);
}
listview.items.add(item);
}
}
(pisane na szybko, chodzi o ideę, mam nadzieję, że dużego babola nie zrobiłem. I nie denerwuj się tak, wystarczy raz zapytać. Ludzie mają też inne zajęcia)
W sumie wystarczy użyć wyszukiwarki, wpisując "operacje na plikach c#" + troszkę twórczego myślenia. pokombinuj sam, bo daleko nie zajdziesz w tej branży, to naprawde nie jest trudny problem
Co znaczy "eof"?
racja, pośpieszyłem się. eof to był skrót myślowy. poprawnie powinieneś przy odczytywaniu sprawdzać to np tak:
((line = sr.ReadLine()) != null)
Ewentualnie przechwytywać wyjątek.
Wszystko masz tu: http://msdn.microsoft.com/en-us/library/system.io.streamreader.aspx