Bonjour à tous,
J'ai lu le post en dessous, mais je ne trouve pas mon bonheur dedans... J'ai fait tous les sites reprennant les infos sur les chaine de caractères et j'en peux plus, parce que j'ai l'impression de respecter tout ce qu'il faut... Mais ca me le fait toujours...Donc j'en viens à vous appeler au secours!
J'ai tenté d'appliquer les remarques que l'on m'avait conseillées dans les posts précédents. Mais rien n'y fait alors que je suis reparti à zéro.
En gros, mon but est de créer un nom de fichier dans le répertoire de l'application. Ce nom de fichier doit être aléatoire.
Je vous transmets mon code:
Récupération du nom de fichier : (OK)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 char * filename; char * getFilename() { return filename; } void setFilename(char * s_Filename) { filename = s_Filename; }
Récupération du répertoire courant : (OK)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 char s_Directory[100]; GetCurrentDirectory(sizeof(s_Directory),s_Directory);
Création nom de fichier : OK : Lorsque je définis moi-même les champs, ca fonctionne. Il me crée bien mon fichier dans c:/test/fichier21229.txt
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 srand(time(NULL)); const char * s_Vol= "c:"; const char * s_Dir = "test"; const char * s_Filename= "fichier"; const char * s_Ext= ".txt"; char * s_Path = malloc (sizeof (*s_Path) * 1024); sprintf(s_Path, "%s\\%s\\%s%d%s", s_Vol, s_Dir,s_Filename,rand(),s_Ext); setFilename(s_Path);
Création nom de fichier : (NOK) : Par contre, lorsque j'utilise mon s_Directory, il m'envoie péter... Alors que lorsque j'affiche mon s_Path, il est bien : c:/test/fichier21229.txt
J'espère que vous y verrez plus clair que moi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 srand(time(NULL)); const char * s_Filename= "fichier"; const char * s_Ext= ".txt"; char * s_Path = malloc (sizeof (*s_Path) * 1024); sprintf(s_Path, "%s\\%s%d%s",s_Directory,s_Filename,rand(),s_Ext); setFilename(s_Path); printf("%s",getFilename()); // Affiche c:/test/fichier21229.txt
Partager