Entwickler-Ecke

WinForms - Bestimmte Zeile aus einer Textdatei auslesen/Doppelte Zeilen


Rakeem - Sa 03.10.15 20:18
Titel: Bestimmte Zeile aus einer Textdatei auslesen/Doppelte Zeilen
Hi zusammen,

ich hoffe mir kann jemand ein paar tipps geben.

Zu meinem Problem:
Ich Lese aus einem Ordner mehrere Textdatein mit dem StreamReader ein.
In diesen Textdatein steht überall dieser Satz "Last 5 characters of installed product key: xxxxx" mehrmals drin.
Und ich möchte nur denn auslesen der als letztes, in denn Textdatein vorkommt oder zumindest nur denn letzten, mit in die neue Textdatei schreiben.
Die textdatein, haben aber alle unterschiedlich viele zeilen.

Mein ansatz:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
while ((line = sr.ReadLine()) != null)
{
    if (line.StartsWith("Last 5 characters of installed product key:"))
    {
        sw.WriteLine(u);
    }
    counter++;
}


Moderiert von user profile iconTh69: Code- durch C#-Tags ersetzt


Th69 - So 04.10.15 10:10

Hallo,

merke und überschreibe einfach je Textdatei einen temp. String:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
string lastProductkey;
while ((line = sr.ReadLine()) != null)
{
    if (line.StartsWith("Last 5 characters of installed product key:"))
    {
        lastProductkey = line;
    }
}

Nun steht in lastProductKey die letzte dieser Zeilen drin (oder null, falls keine Zeile davon vorhanden ist).

PS: Die Mehrzahl von Datei ist Dateien.


Rakeem - So 04.10.15 11:11

Hallo Th69,

Danke für deine Antwort, aber hatte das Problem gestern abend schon gelöst gehabt.

Das mit denn Dateien nehme ich mir zu Herzen ;)