[résolu][wxWidgets]Sauvegarde dans un fichier...

Sauvegarde dans un fichier... [résolu][wxWidgets] - C++ - Programmation

Marsh Posté le 07-04-2005 à 14:30:34    

J'ai le code suivant pour sauvegarder dans un fichier des données de mon programme.
 

Code :
  1. void TMyFrame::OnSauverBase(wxCommandEvent& WXUNUSED(event))
  2. {
  3.     wxFileDialog *dlg = new wxFileDialog(this, "Sauvegarde de la base...", "", "",
  4.                                        "Fichiers Ican(*.ican)|*.ican",
  5.                                        wxSAVE, wxDefaultPosition);
  6.     if ( dlg->ShowModal() == wxID_OK )
  7.     {
  8.         sauvStruct(dlg->GetPath());
  9.         SetStatusText("Sauvegarde réussie !", 0);
  10.     }
  11.     dlg->Destroy();
  12. }


Code :
  1. void sauvStruct(const wxChar *fichier)
  2. {
  3.     //on cree le fichier de nom passé en paramètre
  4.     FILE *f;
  5.     f = fopen(fichier, "w" );
  6.     // ecriture dans le fichier...
  7.     fclose(file);
  8. }


 
Cela fonctionne mais seulement une fois que j'ai fermé l'application (si j'ouvre le fichier texte juste après la sauvegarde il est vide!)
Quelqu'un a une odée d'où ca peut venir ?


Message édité par Kineas le 07-04-2005 à 14:38:58
Reply

Marsh Posté le 07-04-2005 à 14:30:34   

Reply

Marsh Posté le 07-04-2005 à 14:38:35    

Désolé pour cette erreur de débutant mais en fait le problème venait simplement de mon fclose(file) qui doit être fclose(f) ! (mais je ne comprend pas pourquoi le compilateur n'a pas gueulé!!)

Reply

Marsh Posté le 07-04-2005 à 14:41:52    

Kineas a écrit :

Quelqu'un a une odée d'où ca peut venir ?


 
wxChar* revient bien à faire du char* ?
Le fichier est-il bien ouvert (test du retour de  fopen ) ?
 
Je pense cependant que ça vient pluôt de l'écriture dans le fichier. Essaye de poster un peu plus de code.
 
 
 [:grilled]  [:grilled]  [:grilled]  [:grilled]  [:grilled]


Message édité par pascal_ le 07-04-2005 à 14:42:23
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed