Problème Fopen() + sprinf()

Résolu
ras_kayne Messages postés 2 Date d'inscription vendredi 1 décembre 2006 Statut Membre Dernière intervention 8 décembre 2008 - 6 déc. 2008 à 21:48
ras_kayne Messages postés 2 Date d'inscription vendredi 1 décembre 2006 Statut Membre Dernière intervention 8 décembre 2008 - 8 déc. 2008 à 22:32
Bonjour,

Dans le cadre d'un projet je doit écrire dynamiquement des fichiers rien de bien difficile en théorie,
sauf que j'utilise VS2003 pour compiler le code suivant:

char theFilePath[100] ;

//Generate the File Name
sprintf(theFilePath , "../MyDirectory/MyFile_%i.log" , theCounter);

//Open the File and write
FILE * theFile = fopen(theFilePath,"w");

//Write in the File
fprintf(theFile, "Some text  Some Value: %f ",theFloatValue);

 lorsque je fais le fprintf "theFile " est NULL

Du coup Exception et tout le tralala.

Quand j'essai d'executer le meme code sous avec vs2005 sa fonctionne sans bronché :s

Auriez vous déja eu ce cas ??

Merci de votre aide

Linux Power

3 réponses

SebLinck Messages postés 212 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 23 juin 2011
7 déc. 2008 à 10:48
Salut,

regarde du côté du "../aaaa/zzzz" et testes plutôt : "C:\\tmp" dans un premier temps,
ensuite si ça fonctionne tu testes les ".."

Cordialement,
Sébastien.
3
ras_kayne Messages postés 2 Date d'inscription vendredi 1 décembre 2006 Statut Membre Dernière intervention 8 décembre 2008
8 déc. 2008 à 22:32
Re,

Merci pour vos réponses!

Le problème venait du path qui était écrit en UNIX like,

le fais de changer de aaaaa/eeee en aaaa\\eeee à fait toue la différence!!

merci !!

 

Linux Power
3
nanonavich Messages postés 54 Date d'inscription mardi 25 mars 2008 Statut Membre Dernière intervention 15 août 2015
7 déc. 2008 à 14:37
fopen(theFilePath,"w");

w = open TEXT et ecrit donc le fichier doit exister

fopen(theFilePath,"w+");

w+ =Cree un fichier efface si il existe

wb  open binary et ecrit donc le fichier doit exister

wb+ =Cree un fichier binaire efface si il existe
0
Rejoignez-nous