
C# - remove - celý řádek ze souboru / nebo z listu
Dobrý den.
Potřeboval bych poradit.
Mám třídu List -
class List
{
public List<string> listecek = new List<string>();
Random rand = new Random();
StreamWriter sw;
StreamReader sr;
public void Generuj ()
{
using (sw = new StreamWriter("@soubornahcisel.txt", true))
{
for (int i = 0; i < 10; i++)
{
string nahodnycislo = rand.Next(0, 100).ToString();
listecek.Add(nahodnycislo);
sw.WriteLine(nahodnycislo);
}
}
}
string line;
public List<string> SoubordoListu() // muzu se k tyhle metode chovat jako k LISTU
{
using (sr = new StreamReader("@soubornahcisel.txt"))
{
while ((line = sr.ReadLine()) != null)
{
listecek.Add(line);
}
}
return listecek;
}
public void Odtsran(string ID) // zavolám Console.Readline()
{
}
}
- ve které si vygeneruju 10 náhodných čísel. Současně uložim do listu i do souboru.
Když někdy jindy otevřu program - metodou SoubordoListu zajistim, že se mi všechno ze souboru uloží do listecku, abych s tim mohl zrovna pracovat.
A pak tam mám metodu Odstraň.
Pokud mám v listu pouze ta vygenerovaná čísla
59
60
13
1
31
funguje kód
listecek.Remove(ID)
Pokud však za čísla v souboru zadam nějaký text - např. to bude vypadat takto ->
59 sdsdf
60 dsffsd
13
příkaz Remove už nefunguje.
Co bych nejspíš potřeboval je, jak vymažu celý řádek. Buď z listu a nebo tedy se souboru(který bych si do toho listecku pak třeba zpět nkopiroval)
Budu vám vděčný za každou radu. Už si opravdu nevím rady.
Díky všem ... teď už se s tím snad poperu! :)
Mimochodem, rozhodne bych rozdelil to generovani a ukladani do souboru. Protoze pokud s tim budes dal nejak pracovat, tak to nactes a pro dalsi ulozeni budes psat duplicitni kod. Nemluve o tom, co ti to udela, pokud budes mit dve instance te tridy a budes postupne generovat radky do jedne a druhe napreskacku ...