Afficher le contenu d'un fichier texte [Résolu]

Signaler
Messages postés
35
Date d'inscription
jeudi 4 octobre 2007
Statut
Membre
Dernière intervention
2 juin 2015
-
Messages postés
35
Date d'inscription
jeudi 4 octobre 2007
Statut
Membre
Dernière intervention
2 juin 2015
-
Chers programmeurs,
je voudrais, apres avoir ecrire dans un fichier texte, pouvoir afficher son contenu. Quel est le pocesus? Merci bcp.

9 réponses

Messages postés
416
Date d'inscription
vendredi 31 janvier 2003
Statut
Membre
Dernière intervention
19 décembre 2013
2
           Salut, le moyen le plus facile pour toi est d'utiliser la std du c++:

#include
#include <fstream>

using namespace std;

void afficheContenuTexte(const char*const nomFichier)
{
    ifstream fichier;
    char buffer[2048];
   try
   {
       fichier.open(nomFichier,ios::in);
      if(fichier.is_open())
          while(fichier.getline(buffer,2048) && !fichier.eof())
            //affichage sur console
            cout<<buffer<<endl;
   }catch(...)
   {
   }
  if(fichier.is_open())fichier.close();
}

  il s'agit d'un programme basique qui te permettra d'afficher le contenu du fichier texte. bien entendu il y a d'autres moyens plus efficaces, plus evolues pour faire des traitements de texte plus complexes comme des lectures aleatoires repetees (cas des bases de donnees, traitements audio video en mode streaming, etc)

         J'espere avoir aide, Salut

je suis heureux de faire partie d'une grande famille ...!
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
20
Dans une editbox ???
si oui: SetWindowText()

ciao...
BruNews, MVP VC++
Messages postés
653
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
10 novembre 2014
2
Messages postés
653
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
10 novembre 2014
2
Oups j'ai lu trop vite :S

Neo_Fr
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12
Le topic est dans la section C.

Lire un fichier ligne par ligne... pas terrible.
Lire tout d'un coup si possible. Sinon lire par bloque de plusieurs ko.

La gestion des exceptions est, si je ne me trompe pas, très couteuse en ressource. Vos mieux éviter ce genre de trucs.

C++ (@++)<!--
Messages postés
416
Date d'inscription
vendredi 31 janvier 2003
Statut
Membre
Dernière intervention
19 décembre 2013
2
Salut ,
Merci pour la critique, en effet il est possible que je n'ai pas vu que ce message demandais de l'aide en C et non pas en C++. je m'en excuse.
En ce qui concerne la lecture d'un fichier ligne par ligne , il ne s'agit pas d'une lecture ligne par ligne mais d'une lecture par flux d'octets bufferises : ce qui veut dire que lorsque l'on a un caractere d'espacement (\n,\t,\r,' ', etc) il s'arrete de lire et retourne. Seulement si j'ai 2047 caracteres au total, il arrete kan meme.
Maintenant si tu veux optimiser ta lecture , c pas une lecture simple par block kil te faut, il te faut un tampon et des operations asynchrones bas-niveau. Exemple de fonctions : voir comment de Neo_fr plus haut.
   Merci.
je suis heureux de faire partie d'une grande famille ...!
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12
"En ce qui concerne la lecture d'un fichier ligne par ligne , il ne
s'agit pas d'une lecture ligne par ligne mais d'une lecture par flux
d'octets bufferises : ce qui veut dire que lorsque l'on a un caractere
d'espacement (\n,\t,\r,' ', etc) il s'arrete de lire et retourne."

Je ne m'avancerai dans rien la dedans. Je ne connais pas assez les streams. N'empêche que faire une boucle qui appelle 2 méthodes, une pour lire une ligne, l'autre pour tester si on est à la fin du fichier, je trouve ça inutile.

"Maintenant si tu veux optimiser ta lecture , c pas une lecture simple
par block kil te faut, il te faut un tampon et des operations
asynchrones bas-niveau."

Hein ??? Lis ton fichier par bloque de 32 ko. Si moins, lis tout d'un coup. Je vois mal comment avoir plus rapide.

C++ (@++)<!--
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
20
Les buffers des autres sont toujours les meilleurs...
Il faut laisser les croyances pour les lieux de culte.

ciao...
BruNews, MVP VC++
Messages postés
35
Date d'inscription
jeudi 4 octobre 2007
Statut
Membre
Dernière intervention
2 juin 2015

Je vous remercie bcp. Et je remercie a tous.