Appel d'un fichier en C++

Fermé
rif59 Messages postés 41 Date d'inscription mercredi 27 février 2008 Statut Membre Dernière intervention 16 novembre 2008 - 1 avril 2008 à 20:57
mamiemando Messages postés 32283 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 17 mars 2023 - 2 avril 2008 à 16:38
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

5 réponses

Char Snipeur Messages postés 9688 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 2 octobre 2020 1 328
2 avril 2008 à 10:17
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 32283 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 17 mars 2023 7 572
2 avril 2008 à 00:38
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 mercredi 27 février 2008 Statut Membre Dernière intervention 16 novembre 2008 1
2 avril 2008 à 15:22
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 9688 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 2 octobre 2020 1 328
2 avril 2008 à 15:40
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 32283 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 17 mars 2023 7 572
2 avril 2008 à 16:38
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