Navigation dans les lignes d'un fichier texte en C
Lorsque vous travaillez avec des fichiers texte en utilisant C , vous pouvez rencontrer le besoin de passer à une ligne spécifique. Bien qu'il n'existe aucune méthode directe fournie par C à cet effet, vous pouvez y parvenir en parcourant le fichier jusqu'à ce que vous atteigniez la ligne souhaitée.
Boucle vers une ligne spécifique
La solution consiste à utiliser une boucle pour compter les lignes jusqu'à ce que vous atteigniez le numéro de ligne cible. Cette technique est démontrée dans l'extrait de code ci-dessous :
<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>
La fonction GotoLine définit le pointeur de recherche du flux de fichiers au début de la ligne numérique spécifiée.
Test du Code
Pour illustrer cette technique, considérons un fichier texte avec le contenu suivant :
1 2 3 4 5 6 7 8 9 10
Le programme de test suivant montre comment passer à la ligne 8 et lire le contenu :
<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>
Sortie :
8
En implémentant l'approche de boucle, vous pouvez facilement naviguer vers n'importe quelle ligne spécifique d'un fichier texte et accéder à son contenu en C .
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!