Laden...

Wie kann ich eine Txt-Datei vom Ende an lesen?

Erstellt von Goofigoofi vor 4 Jahren Letzter Beitrag vor 4 Jahren 959 Views
G
Goofigoofi Themenstarter:in
25 Beiträge seit 2020
vor 4 Jahren
Wie kann ich eine Txt-Datei vom Ende an lesen?

Hallo zusammen,

ich möchte die vorletzte Zeile, drittletzte usw. aus einer Text Datei lesen. Das Ende der Datei ist leider nicht bekannt.
Bisher habe ich nur gefunden wie ich die letzte Zeile lesen kann.

string lastLine = File.ReadLines(@"C:\Text.txt").Last();

gibt es eine Möglichkeit das Ende zu suchen und rückwärts die Zeilen auszulesen?

G
Goofigoofi Themenstarter:in
25 Beiträge seit 2020
vor 4 Jahren

Sorry hat sich erledigt.


var data = File.ReadAllLines(@"C:\Text.txt");
string last = data[data.Length - 1];
string lastButOne = data[data.Length - 6];

W
955 Beiträge seit 2010
vor 4 Jahren

Bei sehr großen Dateien wäre es aber besser mit einem Stream und Stream.Seek zu arbeiten.

6.911 Beiträge seit 2009
vor 4 Jahren

Hallo Goofigoofi,

kennst du auch SkipLast?

wittes Anmerkung will ich jedoch unterstreichen. Wenns größere Datenmenge od. performanter Code sein soll, so gibt es andere Möglichkeiten, die jedoch aufwändiger zu programmieren sind. Es ist also ein abwägen zwischen einfachen Code und Leistung -- wie so oft hängt es von der Zielsetzung ab die erreicht werden soll.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"