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 :

Enregistrer le contenu de plusieurs Edit dans un fichier .txt [Débutant]


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 44
    Par défaut Enregistrer le contenu de plusieurs Edit dans un fichier .txt
    Bonjour,


    Je vous expose mon problème :

    J'ai deux Edit ( Edit1 et 2), dans le premier j'y stock une chaîne de caractère type 123ab56, et dans le second un poids donc du type 4,25.

    Avec ce code :

    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
     
    //---------------------------------------------------------------------------
     
    #include <vcl.h>
    #pragma hdrstop
    #include <string.h>
     
    #include "UnitSujet.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TFormSujet *FormSujet;
    //---------------------------------------------------------------------------
    __fastcall TFormSujet::TFormSujet(TComponent* Owner)
        : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TFormSujet::BitBtn1Click(TObject *Sender)
    {
        double Poids;
        String IdAnimal;
     
        IdAnimal=Edit1->Text;
        Poids=Edit2->Text.ToDouble();
     
    }
    //---------------------------------------------------------------------------
    J'ai placé un SaveDialog dans ma fiche, mais je ne sais pas du tout comment l'utiliser.

    En fait, je veux sauvegarder le IdAnimal et le poids dans un fichier .txt


    Merci d'avance

    Cordialement

    Coxycross

  2. #2
    Membre très actif Avatar de Argol_Medusa
    Homme Profil pro
    Ingénieur Radiofréquences
    Inscrit en
    Août 2005
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Radiofréquences
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 208
    Par défaut
    (Rapidement) une solution possible :

    TMemo *notepad;
    notepad = new TMemo();

    notepad->Lines->Add(Edit1->Text);
    notepad->Lines->Add(Edit2->Text);

    notepad->SaveToFile("nom_fichier.txt");

    delete notepad;
    Pour le savedialog, il faut lancer la fonction SaveDialog1->Execute() puis récupérer le nom avec SaveDialog1->FileName

    Je n'ai pas le compilateur sous les yeux mais ça doit être ça en gros

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 44
    Par défaut
    Concernant ton code, je n'ai pas tout compris. Parce qu'avec la méthode du notepad, l'utilisateur ne peut pas choisir le nom du fichier si ?
    Et je vois aussi un TMemo, il faut un memo sur ma fiche ?

    Encore une question, pour une concaténation de chaine !

    J'ai donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Total = IdAnimal + Poids + Specimen
    Est-ce qu'il est possible d'ajouter un espace entre chaque chaine ? Et est-il possible d'ajouter 'kg' juste après la chaine poids ?

    NB : Je viens de régler mon problème de concaténation, mais le problème pour la sauvegarde tiens toujours

    Merci d'avance

    cdt Coxycross

  4. #4
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 081
    Par défaut
    TMemo a remplacé par TStringList
    SaveToFile prend le nom du fichier en paramètre fourni par le TSaveDialog

    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
     
    //---------------------------------------------------------------------------
    void __fastcall TFormSujet::BitBtn1Click(TObject *Sender)
    {
     
      double Poids = Edit2->Text.ToDouble();
      String IdAnimal = Edit1->Text;
      String Specimen = ?
     
      if (SaveDialog1->Execute())
      {
        TStringList *sl = new TStringList();
        try
        {
          sl->Add(String().sprintf("%s : %f kg - %s", AnimalID, Poids, Specimen));
          sl->SaveToFile(SaveDialog1->FileName);
        }
        __finally
        { 
          delete sl;
        } 
      } 
    }
    Sinon TFileStream couplé à un TStreamWriter et sa méthode WriteLine


    @coxycross, faudrait chercher un peu plus
    Delphi - Fichier et flux
    Support des entrées et des sorties des fichiers

    C++ Strict :
    C library to perform Input/Output operations
    IOStream C++ Library et fstream - Input/output file stream class

    C++ Builder Avancé :
    Utilisation des FilesMapping sous C++ Builder montre comment utilise un fichier comme si c'était un tableau de byte !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 44
    Par défaut
    Merci beaucoup, avec ton code et quelques arrangements je m'en suis sorti.

    Citation Envoyé par ShailLeTroll
    @coxycross, faudrait chercher un peu plus
    Crois moi, je cherche, mais pas au bon endroit, et il est vrai que j'ai que regardé sur les sites français alors que l'anglais ne me dérange pas.

    Bref, merci

    cdt Coxycross

  6. #6
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 081
    Par défaut
    Citation Envoyé par coxycross Voir le message
    et il est vrai que j'ai que regardé sur les sites français alors que l'anglais ne me dérange pas.
    Je trouve qu'il manque en C++Builder un équivalent de Guide Pascal et Delphi
    Beaucoup d'élement VCL\RTL sont communs mais la syntaxe C++Builder est souvent plus retord !

    En C++Builder on peut se servir des éléments natifs du langage (que je ne connais que très peu car Delphiste d'origine) et surtout la RTL \ VCL qui est le principal intérêt de C++Builder

    C'est d'ailleurs pas évident, lorsque certains membres utilisent C++Builder comme ils utiliseraient Notepad en codant tout en lib C oubliant la VCL
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  7. #7
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 44
    Par défaut
    Citation Envoyé par ShaiLeTroll
    C'est d'ailleurs pas évident, lorsque certains membres utilisent C++Builder comme ils utiliseraient Notepad en codant tout en lib C oubliant la VCL
    Ce qui, je dois l'avouer, m'arrive encore !

    Quand on commence c'est pas évident de prendre un main C++ builder sans aucune formation ou cours, certaines syntaxes sont assez particulières.

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 01/04/2009, 09h49
  2. Enregistrer Le contenu d'un Widget dans un fichier
    Par dogua dans le forum GTK+ avec C & C++
    Réponses: 0
    Dernier message: 16/12/2008, 20h34
  3. 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
  4. Enregistret le contenu d'un edit dans un fichier text
    Par prison_break dans le forum C++Builder
    Réponses: 19
    Dernier message: 02/01/2007, 13h55

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