[C++] Fonction compte nombre de ligne fichier
Résolu
J'essai de coder une fonction en c++ pour compter le nombre de lignes d'un fichier texte.
J'ai deja écrit ce code mais j'obtient des erreurs de compilation et je ne sais pas pourquoi ...
#include <string>
#include <fstream>
#include <iostream>
using namespace std;
int nombreLignes (string fichier);
int main()
{
string fichier("\"noeud.txt\"");
cout << fichier <<endl;
cout<<nombreLignes(fichier) <<endl;
return 0;
}
//Fonction qui renvoi le nombre de ligne d'un fichier
int nombreLignes (string fichier2) {
std::ifstream fichier(fichier2);
int Count = 0;
std::string s;
if ( fichier ) {
while (std::getline(fichier, s)) {Count++;}
return Count;
}
else { cout << "echec" <<endl;}
return 0;
}
J'ai deja écrit ce code mais j'obtient des erreurs de compilation et je ne sais pas pourquoi ...
A voir également:
- [C++] Fonction compte nombre de ligne fichier
- Fichier bin - Guide
- Fichier epub - Guide
- Fonction si et - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
4 réponses
#include <string>
#include <fstream>
#include <iostream>
int nombreLignes (const std::string & filename) {
std::ifstream fichier(filename.c_str());
std::string s;
if(fichier){
unsigned int count = 0;
while(std::getline(fichier,s)) ++count;
return count;
}else{
std::cout << "Ne peut ouvrir " << filename << std::endl;
}
fichier.close();
return 0;
}
int main(int argc,char **argv)
{
if(argc != 2){
std::cerr << "usage " << argv[0] << " fichier" << std::endl;
return 1;
}
std::cout << nombreLignes(argv[1]) << std::endl;
return 0;
}
Bonne chance
C'est moi où t'essayes de lire le fichier "noeud.txt" ?
Essayes en faisant:
string fichier("noeud.txt");
Et pis comme l'a très bien dit Lupin, vires tous les std::
Essayes en faisant:
string fichier("noeud.txt");
Et pis comme l'a très bien dit Lupin, vires tous les std::