"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment accéder à une ligne spécifique dans un fichier texte en utilisant C++ ?

Comment accéder à une ligne spécifique dans un fichier texte en utilisant C++ ?

Publié le 2024-11-11
Parcourir:269

How to Jump to a Specific Line in a Text File Using C  ?

Navigation dans les lignes d'un fichier texte en C

Lorsque vous travaillez avec des fichiers texte à l'aide de C , vous devrez peut-être accéder à 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 :

#include 
#include 

std::fstream& GotoLine(std::fstream& file, unsigned int num){
    file.seekg(std::ios::beg);
    for(int i=0; i ::max(),'\n');
    }
    return file;
}

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 accéder à la ligne 8 et lire le contenu :

int main(){
    using namespace std;
    fstream file("bla.txt");

    GotoLine(file, 8);

    string line8;
    file >> line8;

    cout 

Sortie :

8

En implémentant l'approche en boucle, vous pouvez facilement naviguer vers n'importe quelle ligne spécifique d'un fichier texte et accéder à son contenu en C .

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3