Wie kann man bestimmte Zeilen aus einer .txt Datei auslesen?
-
[/code]Hi Leute,
ich bin neu hier im Forum. Deswegen kenne ich mich noch net so sehr aus.
Vllt. gibt es schon nen Thread aber ich kenne mich hier auf der Website noch nicht aus.Meine Frage:
Wie kann man aus einer Textdatei bestimmte Zeilen auslesen??
Angenommen ich will Zeile 2 einlesen:Bsp:
#include <iostream> #include <fstream> #include <string> using namespace std; int main() { string inhalt; ifstream inputFile; inputFile.open("C:\\Users\\Zettler\\Desktop\\DateienSchreiben.txt"); while(!inputFile.eof()) { getline(inputFile, inhalt); cout << inhalt << endl; } inputFile.close(); }DateienSchreiben.txt:
Hallo Welt
Ich bin neu in C++
Auf WiedersehenHoffe, es kann mir jemand weiterhelfen

(Achja - das gleiche gilt beim Schreiben ;))
-
Achja - in meinem oben genannten Code werden alle drei Zeilen eingelesen.
Deswegen möchte ich wissen wie man bestimmte Zeilen einlesen kann
-
indem du alle anderen zeilen überspringst ?
z.B.
for(int i=0;!inputFile.eof();i++) { getline(inputFile, inhalt); if(i==1) cout << inhalt << endl; }
-
DarkShadow44 schrieb:
indem du alle anderen zeilen überspringst ?
z.B.
for(int i=0;!inputFile.eof();i++) { getline(inputFile, inhalt); if(i==1) cout << inhalt << endl; }cool danke - funktioniert

also gibt das: if(i == 1) die zeile an oder?
das 1 steht für die zweite Zeile und die 0 für die erste usw. ??
-
naja es wird halt wie vorher eine zeile nach der anderen eingelesen. Zusätzlich wird die Variable i von 0 beginnend mit jeder zeile eins hochgezählt. D.h. i ist die Zeilennummer - 1.

Wobei die Lösung von der Performance her bestimmt nicht perfekt ist ^^