Bonjour à tous,
J'ai (encore) besoin de vous...
En effet j'essaie d'écrire la date (syntaxe : jj/mm/aaaa) dans un fichier afin de pouvoir par la suite consulter un historique.
Pour cela je fait de la façon suivante :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
/* Déclarations des variables */
(...)
FILE *fichier;
AnsiString date;
/* Initialisations des variables */
(...)
date = DateToStr (Date());
fichier = fopen(windowIdentification->fichierUser, "a+");
/* afficher la date dans un Label et l'écrire dans un fichier*/
afficheDate->Caption = date;
(...)
fwrite (afficheDate->Caption, 1, 10, fichier);
(...) |
bien entendu fwrite attend en 1er paramètre un char* et non un AnsiString.
c'est pourquoi j'ai tester en écrivant directement le contenu du Label au lieu de la variable, mais même résultat.
donc j'ai essayé :
fwrite (afficheDate->Caption.s_str(), 1, 10, fichier);
ou bien
fwrite ((char*)afficheDate->Caption1, 10, fichier);
Dans le premier cas, à la compilation on me dit (logiquement) que ".s_str()" n'est pas un membre de AnsiString; et dans le 2nd cas que le transtypage est impossible !!!!
Alors si quelqu'un sait comment faire pour enregistrer cette malheureuse string dans un fichier, merci de me le dire.
@+
ps: j'ai aussi tester :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
/* Déclarations des variables */
(...)
FILE *fichier;
AnsiString date;
char* date2 = new char(date.Length() + 1);
/* Initialisations des variables */
(...)
date = DateToStr (Date());
fichier = fopen(windowIdentification->fichierUser, "a+");
/* afficher la date dans un Label, la concaténer dans une autre variable date 2 que l'on écrit dans un fichier.*/
afficheDate->Caption = date;
(...)
strcpy (date2, date.c_str());
fwrite (date2, 1, 10, fichier);
(...) |
Partager