Navigieren in Textdateien in C: Zu bestimmten Zeilen springen
Das Öffnen von Textdateien mit fstream ermöglicht den Zugriff auf den Inhalt der Datei. Manchmal ist es jedoch notwendig, eine bestimmte Zeile in der Datei zu überspringen oder darauf zuzugreifen.
Navigieren zu einer bestimmten Zeile
Um zu einer bestimmten Zeile zu gehen, z. B. Zeile 8, eine einfache Methode besteht darin, einen schleifenbasierten Ansatz zu verwenden:
<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>
Diese Funktion verwendet einen Dateistream und eine Zeilennummer als Parameter. Es setzt den Suchzeiger der Datei auf den Anfang der angegebenen Zeile.
Den Code verstehen
Beispielverwendung
Um diesen Ansatz zu testen, betrachten Sie a Textdatei mit folgendem Inhalt:
1 2 3 4 5 6 7 8 9 10
Das folgende Programm zeigt, wie man zu Zeile 8 gelangt:
<code class="cpp">int main() { using namespace std; fstream file("bla.txt"); GotoLine(file, 8); string line8; file >> line8; cout << line8; // Output: 8 cin.get(); return 0; }</code>
Mit dieser Methode können Sie ganz einfach zu einer bestimmten Zeile navigieren eine Textdatei. Dieser Ansatz ist besonders nützlich, wenn es um große Dateien geht oder wenn auf bestimmte Informationen zugegriffen werden muss, ohne die gesamte Datei zu analysieren.
Das obige ist der detaillierte Inhalt vonWie greife ich mit C direkt auf eine bestimmte Zeile in einer Textdatei zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!