Appel d'un fichier en C++

rif59 Messages postés 41 Date d'inscription   Statut Membre Dernière intervention   -  
mamiemando Messages postés 33778 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour:
j'ai creer plusieurs fichiers. et je doit que chaque fois appeler un fichier, en fait je suis debutant en programmation, et je veux savoir si je peux appeler le fichier pendant l'execution comme par exemple d'ecrire:
cout<<" donner le nom de fichier:"<<endl;
cin>>nom_fichier;
..
ifstream f("nom_fichier.txt");

et comment je dois declarer nom_fichier.
merci d'avance pour vos reponsese
A voir également:

5 réponses

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
C'est out à fait fesable,
en passant en argument à ifstream une variable plutôt qu'une chaine constante.
ifstream f;
f.open(nom_fichier,std::ios::append);
1
mamiemando Messages postés 33778 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Qu'entends tu par appeler un fichier ? Est-ce un exécutable ? Ou veux tu lire son contenu ? Ou écrire dedans ?

Bonne chance
0
rif59 Messages postés 41 Date d'inscription   Statut Membre Dernière intervention   1
 
en fait j'ai voulu ouvrir et lire le contenu du fichier. mais que dois je faire si s'ounvre pas en lecture?
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
comment ça il ne s'ouvre pas en lecteur ?
f.open() retourne 0?
Tu essai bien de lire un fichier que tu as le droit de lire ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamiemando Messages postés 33778 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Pour ouvrir un fichier :
- en lecture : std::ifstream + opérateur >>
- en écriture : std::ofstream + opérateur <<

Ce qui donne :
#include <fstream>

int main(){
  std::string filename;
  std::cout << "nom du fichier ?" << std::endl;
  std::cin >> filename;
  std::ifstream ifs(filename.c_str());
  if(!ifs){
    std::cerr << "impossible d'ouvrir " << filename << std::endl;
    return 1; 
  }
  
  std::string line;
  while(std::getline(ifs,line)){
    std::cout << line << std::endl;
  }
  ifs.close();
  return 0;
}

Plus de détails :
https://cpp.developpez.com/faq/cpp/?page=Manipulation-des-fichiers#FICHIERS_lecture_par_ligne

Bonne chance
0