IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ avec C & C++ Discussion :

Enregistrer un fichier texte sous GTK+


Sujet :

GTK+ avec C & C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    4
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 4
    Par d�faut Enregistrer un fichier texte sous GTK+
    J'ai un probl�me quand je recharge un fichier enregistr� grace � ma fonction "OnSave"
    Le fichier m'affiche des caract�res illisibles. Apparement j'ai un probl�me avec le buffer :



    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    void OnSave(GtkWidget* widget, gpointer data)
    {
      GtkWidget *pSave=NULL;
      pSave = gtk_file_chooser_dialog_new ("Save File as ...",
    						GTK_WINDOW(data),
      				      GTK_FILE_CHOOSER_ACTION_SAVE,
      				      GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
      				      GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT,
      				      NULL);
      gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (pSave), TRUE);
      gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (pSave), "Untitled.");
     
     
     
      if (gtk_dialog_run (GTK_DIALOG (pSave)) == GTK_RESPONSE_ACCEPT)
      {
        gchar *filename;
        filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (pSave));
    	/* save the output */
     
        FILE* fichier = NULL;
        long lsize;
        char save [2048];
        char buffer[256];
        fichier = fopen(filename, "w");
     
        if (fichier != NULL)
        {
     
        	time_t timestamp = time(NULL);
     
    	fseek (fichier , 0 , SEEK_END);
      	lsize = ftell (fichier);  
     
    	fread( save, 1, lsize, fichier);
        	strftime(buffer, sizeof(buffer), "%A %d %B %Y - %X.", localtime(&timestamp));
     
    	fputs("Fichier enregistré le ",fichier);
    	fputs(buffer,fichier);
    	fputs("\nHistorique de votre référence\n\n\n",fichier);
            fputs(save, fichier);
            fclose(fichier);
        }
     
        free (buffer);
        free (save);
        g_free (filename);
      }
     
      gtk_widget_destroy (pSave);
    }

  2. #2
    Mod�rateur

    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Par d�faut
    Simplifie toi le boulot et utilise g_file_set_contents.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    4
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 4
    Par d�faut
    J'ai des erreurs de segemntations quand je l'utulise.

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par d�faut
    Ca sent la corruption m�moire dans les donn�es que tu essaies de sauver.

  5. #5
    Mod�rateur

    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Par d�faut
    Citation Envoy� par tony952 Voir le message
    J'ai des erreurs de segemntations quand je l'utulise.
    Pars�me des dans le code, ou lance un d�boguer, pour voir � quel moment �a plante... Parce que l� tu ne nous donne pas beaucoup d'infos utiles...

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    4
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 4
    Par d�faut
    Je ne sais pas bien utiliser cette fonction : g_file_set_contents () en fait.
    Quelqu'un aurait un exemple d'utilisation pour que je vois � quoi �a ressemble (non je ne demande pas qu'on me serve le code sur un plateau dor�).

    Pour rappel je cherche � savoir pouquoi ma fonction ne fonctionne pas, et que voulez vous dire par corruption m�moire ?

  7. #7
    R�dacteur
    Avatar de Franck.H
    Homme Profil pro
    D�veloppeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activit� : D�veloppeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par d�faut
    Montre le code que tu as fait
    Mon Site
    Ma biblioth�que de gestion des cha�nes de caract�res en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne r�pond � aucune question technique par MP, merci d'avance !

  8. #8
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par d�faut
    Citation Envoy� par tony952 Voir le message
    Pour rappel je cherche � savoir pouquoi ma fonction ne fonctionne pas, et que voulez vous dire par corruption m�moire ?
    Lib�ration par 2 fois de la m�me zone m�moire (double-free), �criture hors des limites d'un tableau, ...

Discussions similaires

  1. Enregistrement d'un fichier texte sous un autre nom
    Par wafa_ba dans le forum G�n�ral Python
    R�ponses: 1
    Dernier message: 16/01/2014, 04h46
  2. [WM18] Comment enregistrer des valeurs dans un fichier texte sous IOS
    Par nico78 dans le forum Windev Mobile
    R�ponses: 1
    Dernier message: 26/08/2013, 15h13
  3. R�ponses: 2
    Dernier message: 06/08/2007, 13h54
  4. Comment ouvrir un fichier text sous Java ?
    Par mpascolo dans le forum Entr�e/Sortie
    R�ponses: 6
    Dernier message: 11/10/2006, 14h59
  5. feof et fichier texte sous unix
    Par Magicmax dans le forum C
    R�ponses: 7
    Dernier message: 07/12/2005, 08h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo