Heim > Artikel > Backend-Entwicklung > Wie springe ich mit C zu einer bestimmten Zeile in einer Textdatei?
Navigieren in Textdateizeilen in C
Wenn Sie mit Textdateien in C arbeiten, müssen Sie möglicherweise zu einer bestimmten Zeile springen. Obwohl C für diesen Zweck keine direkte Methode bereitstellt, können Sie dies erreichen, indem Sie die Datei durchlaufen, bis Sie die gewünschte Zeile erreichen.
Schleife zu einer bestimmten Zeile
Die Lösung besteht darin, eine Schleife zu verwenden, um Zeilen zu zählen, bis Sie die Zielzeilennummer erreichen. Diese Technik wird im folgenden Codeausschnitt demonstriert:
<code class="cpp">#include <fstream> #include <limits> std::fstream& GotoLine(std::fstream& file, unsigned int num){ file.seekg(std::ios::beg); for(int i=0; i < num - 1; ++i){ file.ignore(std::numeric_limits<std::streamsize>::max(),'\n'); } return file; }</code>
Die GotoLine-Funktion setzt den Suchzeiger des Dateistreams auf den Anfang der angegebenen Num-Zeile.
Testen der Code
Um diese Technik zu veranschaulichen, betrachten Sie eine Textdatei mit dem Folgenden Inhalt:
1 2 3 4 5 6 7 8 9 10
Das folgende Testprogramm zeigt, wie man zu Zeile 8 springt und den Inhalt liest:
<code class="cpp">int main(){ using namespace std; fstream file("bla.txt"); GotoLine(file, 8); string line8; file >> line8; cout << line8; cin.get(); return 0; }</code>
Ausgabe:
8
Durch die Implementierung von Mit dem Looping-Ansatz können Sie problemlos zu einer bestimmten Zeile in einer Textdatei navigieren und auf deren Inhalt in C zugreifen.
Das obige ist der detaillierte Inhalt vonWie springe ich mit C zu einer bestimmten Zeile in einer Textdatei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!