slt;
c'est une programme pour ouvrire un fichier
'toto.txt', la premiere partie est pour afficher le cntenu de fichier
dans la cosole et la deuxiéme partie pour compter le nombre de ligne de
meme fichier.et comme vous pouvez noté que j étais obligé de faire 2
fois le" ifstream" car si je met les 2 partie sous la meme ifstream il
ne m'a ffiche que la première.
#include <algorithm>
#include <fstream>
#include <string>
#include <iostream>
using namespace std;
int main()
{
// le constructeur de ifstream permet d'ouvrir un fichier en lecture
ifstream fichier( "toto.txt" );
if ( fichier ) // ce test échoue si le fichier n'est pas ouvert
{
string ligne; // variable contenant chaque ligne lue
while ( getline( fichier, ligne,'\0') )
{
cout << ligne << endl;
}
ifstream fi ("toto.txt" );
int lines = count(
istreambuf_iterator<char>( fi ),
istreambuf_iterator<char>(),
'\n' );
// cette boucle s'arrête dès qu'une erreur de lecture survient
// afficher la ligne à l'écran
cout << lines << endl;
}
}
le fihier "toto.txt":
2958 ; 2944 ; 2980 ; 2971 ; 2981 ; 2956 ; 2964 ; 2987 ; 2968 ; 29 ;
2991 ; 3017 ; 3016 ; 3025 ; 3032 ; 3043 ; 2994 ; 3008 ; 2994 ; 3008 ;
le resultat affiché sur la console est un string "ligne" comment il faut faire pour le faire afficher comme un integer??, et
une derniere question comment il faut faire pour changer le ';' en ",
"dans le resultat finale.je pense que je suis un peu chiant.
merci pour votre réponse