Naviguer dans des fichiers texte en C : accéder à des lignes spécifiques
L'ouverture de fichiers texte avec fstream permet d'accéder au contenu du fichier. Cependant, il est parfois nécessaire de parcourir ou d'accéder à une ligne spécifique du fichier.
Naviguer vers une ligne spécifique
Pour accéder à une ligne spécifique, telle qu'une ligne 8, une méthode simple consiste à utiliser une approche basée sur une boucle :
<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>
Cette fonction prend un flux de fichier et un numéro de ligne comme paramètres. Il définit le pointeur de recherche du fichier au début de la ligne spécifiée.
Comprendre le code
Exemple d'utilisation
Pour tester cette approche, considérons un fichier texte avec le contenu suivant :
1 2 3 4 5 6 7 8 9 10
Le programme suivant montre comment accéder à la ligne 8 :
<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>
En utilisant cette méthode, vous pouvez facilement accéder à une ligne spécifique dans un fichier texte. Cette approche est particulièrement utile lorsqu'il s'agit de fichiers volumineux ou lorsqu'il faut accéder à des informations spécifiques sans analyser l'intégralité du fichier.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!