C# windows form segítségével, hogy írjak bele egy 100soros xml file 53.- 60.-sorába ( attól függően, hogy mennyi adatot viszünk be) gombnyomásra?
StringBuilder sbText = new StringBuilder();
using (var reader = new System.IO.StreamReader(textFile)) {
while ((line = reader.ReadLine()) != null) {
if (line.Contains(stringToSearch)) {
//possibly better to do this in a loop
sbText.AppendLine(reader.ReadLine());
sbText.AppendLine(reader.ReadLine());
sbText.AppendLine("Your Text");
break;//I'm not really sure if you want to break out of the loop here...
}else {
sbText.AppendLine(line);
}
}
}
1-es: ez meg mi a fészkes franc?? köze nincs a kérdéshez.
gombnyomás: tudsz megadni eseménykezelőket, visual studioban pár kattintással. Ha egérre gondoltál, akkor onMouseClick esemény, ha billentyűlenyomást akarsz, akkor onKeyPress, de ekkor a kezelőben ellenőrizned kell, hogy melyik gombot nyomták meg ha e az Event neve, akkor például: if(e.KeyCode == Keys.Enter) fog enter esetén lenni a helyes. Az eseménykezelőbe pedig beteszed a kódot, ami ír az xml-be:
Mivel egyetlen sorokat nem lehet középen módosítani, újra kell írnod a fájlt helyesen. Ennek módja: StreamReader-rel beolvasod az összes sort egy tömbbe, ezután (mivel a tömb fix méretű, nem tudnál vele mit kezdeni) csinálsz belőle egy listát ( List<string> linelist = new List<string>(linearray) ) (ha a linearray a tömb, amibe olvastál.
A listába utána már tetszőleges helyre szúrhatsz be új elemeket (Insert metódussal pontos pozícióba). Ezután meg fogsz egy foreach ciklust a listára, és egy StreamWriter osztállyal soronként újraírod a fájlt.
Ha nem érthető valami, inkább írj nekem.
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!