Selectionner le nom du fichier ofstream [Résolu]

Signaler
Messages postés
8
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
30 août 2006
-
Messages postés
8
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
30 août 2006
-
Bonjour, 

   Je suis débutant en C++ et j'ai quelques souci dans l'utilisation de ofstream. La fonction ofstream marche très bien mais j'aurais bien voulu pouvoir changer le nom en fonction du nom taper au clavier

      si le nom du fichier est Files.txt j'aurais aimé appelé mon fichier de sortie OutputFiles.txt.

J'ai essayé : 
   cin >>   FileName;    -- saisie au clavier 
   std::string outputFile;
   outputFiles = "Output"+FileName;
   essageOutput(outputFiles );

J'ai une erreur qui me dis qu'il est impossible de faire + entre deux pointeurs;

Pouvez m'aider, ou me donner une autre solution.

Merci beaucoup

4 réponses

Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
5
Ce qui marche c'est l'addition de 2 strings et pas de pointeur donc:


string chaine1("coucou");

string chaine2 = chaine1 + string(" ca va ?");
Messages postés
8
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
30 août 2006

En cherchant j'ai trouvé. J'ai écris cela

std::string FileName;
std::cout<<"Le nom du fichier"<<std::endl;
cin>>FileName
ifstream file (FileName.c_str());
std::string FileNameOutput = (string) "OUT" + FileName;
ofstream MessageOutput (FileNameOutput.c_str());

En fait ce qui ma posé problème c'est la conversion string vers char* (c_str())
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
Mets ta fonctin complete ici.
En effet si tu as un pointeur, l'opérateur + n'a aucun sens.
Deux poiteurs ne "s'ajoutent" pas. Par contre pour deux string cela marche tout a fait.

Exemple:
string s1 = "Bon";
string s2 = "jour";
string s3 = s1 + s2

Une autre solution est de passé par des fonctions de concaténation tel que strcat(...)

Shell
Messages postés
8
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
30 août 2006

Ok je te mettrai la fonction complète enfin une partie car code très volumineux ce soir car je suis au travail et me rappelle plus la totalité du code.
Merci beaucoup
Qu'est qu'on ferait sans vous?
réponse : RIEN