Maison >développement back-end >C++ >Comment puis-je lire efficacement le contenu d'un fichier ligne par ligne ou tout à la fois en C ?

Comment puis-je lire efficacement le contenu d'un fichier ligne par ligne ou tout à la fois en C ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-26 12:43:10864parcourir

How Can I Efficiently Read File Content Line by Line or All at Once in C  ?

Lire efficacement le contenu des fichiers

En programmation, la gestion efficace des fichiers est cruciale. Bien que la lecture d'un fichier mot par mot soit réalisable, des considérations pratiques exigent des techniques plus efficaces pour les fichiers volumineux. Cet article explore les méthodes permettant de lire ligne par ligne ou l'intégralité du contenu à la fois.

Considérons un fichier texte nommé "Read.txt" contenant le texte suivant :

I love to play games
I love reading
I have 2 books

Lecture ligne par ligne

La fonction std::getline peut lire une seule ligne de texte à partir d'un file:

#include <fstream>
#include <string>

int main() {
    std::ifstream file("Read.txt");
    std::string line;
    while (std::getline(file, line)) {
        // Process line
    }
}

Lecture du fichier entier en une seule fois

Pour lire le fichier en entier en une seule fois, concaténez les lignes récupérées à l'aide d'un tampon de chaîne :

#include <fstream>
#include <string>

int main() {
    std::ifstream file("Read.txt");
    std::string line;
    std::string file_contents;
    while (std::getline(file, line)) {
        file_contents += line;
        file_contents.push_back('\n');
    }
}

En conclusion, l'utilisation de std::getline propose des méthodes efficaces pour lire un fichier ligne par ligne ou obtenir l'intégralité du contenu d'un seul coup. Ces techniques permettent une gestion flexible et efficace des fichiers en programmation.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn