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

C++Builder Discussion :

Enregistret le contenu d'un edit dans un fichier text


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de prison_break
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 83
    Par défaut Enregistret le contenu d'un edit dans un fichier text
    bonjour à tous les développeurs

    voila j'aimerai pouvoir enregistrer le contenu d'un edit dans un fichier text...et je voudrais savoir savoir si quelqu'un l'a deja fait et comment il a fait...

    merci d'avance

    PB

  2. #2
    Membre éclairé Avatar de kurul1
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    934
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 934
    Par défaut
    Moi je verrais 2 solutions

    Ouvrir un fichier et enregistrer le contenu de ton Edit dedans

    Utiliser un Memo, copier la valeur de ton Edit dans ce memo et ensuite utiliser la méthode SaveToFile pour enregistrer ton fichier.

    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
        TEdit *Edit = new TEdit();
        TMemo *Memo = new TMemo();
     
        // Chemin de mon fichier
        AnsiString CheminFichier;       // tu mets le chemin de ton fichier dedans
     
        Edit->Text = "test";
     
        // On sauvegarde le contenu de l'edit dans le memo
        Memo->Lines->Add(Edit->Text);
     
       // On sauvegarde le contenu du Memo
       Memo->Lines->SaveToFile(CheminFichier);

  3. #3
    Membre Expert
    Avatar de bakaneko
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 268
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 268
    Par défaut
    Tu peux également le faire avec un TStringList

    Code C++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    TStringList* Fichier = new TStringList;
     
    Fichier->Add(Edit1->Text);
     
    Fichier->SaveToFile("c:\\monfichiertexteàmoiquejaime.txt");
     
    delete Fichier;

  4. #4
    Membre confirmé Avatar de prison_break
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 83
    Par défaut
    mais tout ce que vous m'avez dit je le place ou...
    car je l'ai placé dans un bouton envoyer et ca ne fonctionne pas...

  5. #5
    Membre émérite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    Février 2006
    Messages
    916
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 916
    Par défaut
    As tu bien regardé si le fichier avait été créé ?

  6. #6
    Membre chevronné
    Avatar de Altau
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    296
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 296
    Par défaut
    Les solutions proposées me paraissent du niveau d'un lance-missile pour abattre un lapin
    C'est très riche de créer un nouveau composant rien que pour ça.

    Le code ci-dessous est beaucoup plus léger et parfaitement efficace :
    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
    //---------------------------------------------------------------------------
    #include <vcl.h>
    #pragma hdrstop
     
    #include "Unit1.h"
    #include <stdio.h>
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    FILE *out;
    	if ((out = fopen("C:\\MonFichier.txt", "wt")) != NULL) // ouverture du fichier réussie
    	{
    		fputs(Edit1->Text.c_str(), out);
    		fclose(out);
    	}
    	else
    		ShowMessage("Impossible de créer le fichier");
    }
    //---------------------------------------------------------------------------
    Ne pas oublier le #include <stdio.h>

  7. #7
    Membre confirmé Avatar de prison_break
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 83
    Par défaut
    je retire mes 2 questions, j'ai trouvé en cherchant un peu plus.

    J'ai descidé de remplacer le bouton par un timer, le problème qui se pose c'est que toutes les données ne se mette pas a la suite des autres, a chaque fois cela ecrase le text du debut, pourtant je saute une ligne en mettant \n

  8. #8
    Membre Expert
    Avatar de bakaneko
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 268
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 268
    Par défaut
    Citation Envoyé par prison_break
    je retire mes 2 questions, j'ai trouvé en cherchant un peu plus.

    J'ai descidé de remplacer le bouton par un timer, le problème qui se pose c'est que toutes les données ne se mette pas a la suite des autres, a chaque fois cela ecrase le text du debut, pourtant je saute une ligne en mettant \n
    si je ne me trompe pas, fopen donne accès au fichier tout en positionnant le curseur d'écriture au début du fichier. Il faut faire un fseek pour te déplacer dans ton fichier (voir l'aide pour plus d'infos).

  9. #9
    Membre confirmé Avatar de prison_break
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 83
    Par défaut
    j'utilise fopen, mais fseek, je n'arrive pas à l'utiliser...

  10. #10
    Membre Expert
    Avatar de bakaneko
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 268
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 268
    Par défaut
    Citation Envoyé par prison_break
    j'utilise fopen, mais fseek, je n'arrive pas à l'utiliser...
    J'ai proposé fseek mais, moi aussi, je ne vois pas comment l'utiliser

    Par contre, tu peux utiliser le mode "a" au lieu du mode "wt" au niveau du fopen

    Citation Envoyé par Aide de Builder au sujet du mode a
    open for writing at end-of-file or create for writing if the file does not exist.

  11. #11
    Membre confirmé Avatar de prison_break
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 83
    Par défaut
    Merci mais a quoi cela va me servir de mettre "a" a la place de "wt", wt fonctionne trés bien, je ne vais donc pas le modifier...
    Mais je ne vois vraiment pas comment faire pour ne pas écraser mes anciennes données...

    Dis moi si je t'ai mal compris bananeko???

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. enregister le contenue de text edit dans un fichier text
    Par othmane09 dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 16/06/2014, 16h27
  2. [Débutant] Enregistrer le contenu de plusieurs Edit dans un fichier .txt
    Par coxycross dans le forum C++Builder
    Réponses: 12
    Dernier message: 29/06/2012, 10h28
  3. Réponses: 6
    Dernier message: 01/04/2009, 09h49
  4. enregistrer le contenu d'un Edit dans un fichier texte
    Par tapouni dans le forum C++Builder
    Réponses: 3
    Dernier message: 16/05/2008, 23h02
  5. Réponses: 1
    Dernier message: 29/09/2007, 09h46

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