Miért csak az utolsó sort olvassa be?
Próbálok egy txt fájlt beolvasni majd splitelni de mindig csak az utolsó sort adja eredményül. Tipp valakinek miért?
StreamReader sr = new StreamReader(@"C:\felhasznalo\felhasznalo.txt");
string x = sr.ReadToEnd();
string[] y = x.Split('\n');
foreach (string s in y)
{
richTextBox1.Text = s;
}
richTextBox1.Text = s;
Ezzel a sorral folyamatosan felülírod a textbox tartalmát, a végén már csak az utolsó sor marad benne.
Először is, ne a cikluson belül add át a textboxnak a szöveget, ezzel csak lassítod a programot. Ez a sor kerüljön a ciklus utánra.
A ciklus előtt deklarálj egy string változót, kezdeti értéke legyen üres, cikluson belül ehhez add hozzá folyamatosan az új sorokat, a ciklus után pedig ennek a stringnek az értékét add át a textboxnak.
"A ciklus előtt deklarálj egy string változót, kezdeti értéke legyen üres, cikluson belül ehhez add hozzá folyamatosan az új sorokat, a ciklus után pedig ennek a stringnek az értékét add át a textboxnak."
Ezt minek? Akkor olvassa is be egyben egy string-be a File.ReadAllText-tel
Beolvasod az egész fájlt egy stringbe:
string x = sr.ReadToEnd();
Utána szétdarabolod, hogy a darabok mindegyikét berakd egy textboxba. Szerinted ennek van értelme? :)
Rakd be egybe, amit beolvastál, nem kell darabolni és újra összerakni.
string x = sr.ReadToEnd();
richTextBox1.Text = x;
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!