Ouverture fichier

phenX Messages postés 704 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 28 août 2012 - 19 oct. 2005 à 14:48
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 20 oct. 2005 à 09:23
comment fait on pour ouvrir un fichier quand on ne connait ni le nom ni l'emplacement?



moi j'utilisait fopen(nomfichier,"r") mais bon, quand on ne connait pas encore le nol de fichier...

7 réponses

cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
19 oct. 2005 à 15:00
Hein ??????????????

@+

MSN : x_men_40@hotmail.com
0
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
19 oct. 2005 à 15:02
Si tu sais pas quel fichier tu doit ouvrir, c'est sur que cela va être dur de l'ouvrir. Ou alors c'est que la question est mal posée et que tu veux savoir comment ouvrir un fichier dont le nom est spécifié par l'utilisateur lors de l'exécution ?

Dans ce cas :
char filename[256];
fgets(filename, 256, stdin);
FILE* f = fopen(filename, "r");
0
phenX Messages postés 704 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 28 août 2012
19 oct. 2005 à 15:03
ben pour ouvrir un fichier dont le nom est saisi par l'utilisateur
0
phenX Messages postés 704 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 28 août 2012
19 oct. 2005 à 15:04
ok ca doit être ca, merci, je teste et je dit koi
0

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

Posez votre question
phenX Messages postés 704 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 28 août 2012
19 oct. 2005 à 15:05
et stdin, ca sert a quoi?
0
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
19 oct. 2005 à 23:29
hm, compliqué, moi je dis:



#include <fstream>



...

std::string nom_du_fichier;

...

std::ifstream file(nom_du_fichier.c_str());

if (!file)

{

on traite l'erreur, par exemple si le fichier n'existe pas

}

else TOUT VA BIEN :)
0
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
20 oct. 2005 à 09:23
tu pourrais utiliser gets directement pour lire ce que rentre l'utilisateur. fgets est plus générique et permet de lire une chaîne de caractères depuis n'importe quel flux et de plus est protégé contre les dépassement de chaîne car on lui fourni la taille maximale que l'on veut. stdin permet de dire que l'on veut lire ce qui a été tapé sur l'entrée standard (clavier ou fichier si elle a été redirigée).
0
Rejoignez-nous