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 :

sauvegarder/charger le contenue d'un Memo dans un .txt


Sujet :

C++Builder

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Par défaut sauvegarder/charger le contenue d'un Memo dans un .txt
    Bonjours a tous !
    voila mon problème :
    je veux sauvegarder le contenu de mon Memo dans un .txt
    sans que le contenue du .txt soit écraser à chaque nouvelle sauvegarde

    sauvegarde :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
    {
    if((Action != caNone) && (Action != caMinimize))
        {
        Memo1->Lines->SaveToFile(StorageFile);
        }
     
    }
    Chargement .txt :

    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
    void __fastcall TForm1::Button3Click(TObject *Sender)
    {
     
     
    StoragePath = ExtractFilePath(Application->ExeName);
    StorageFile = StoragePath + "convers.txt";
     
         if(FileExists(StorageFile))
        {
          Archive->Show();
          Archive->Memo1->Lines->LoadFromFile("convers.txt") ;
     
     
        }
      else
        {
     
       // Memo1->Lines->SaveToFile("Project1.ini");
        }

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Juin 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 351
    Par défaut
    Si tu veux sauver en incrémental, il faut ouvrir le fichier avec les attributs "écriture" et "append" (le curseur se met tout seul à la fin du fichier):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
      #include <fstream>
      #include <iostream>
      using namespace std;
     
      ofstream  *out=new ofstream(filename.c_str(),ios::app|ios::out);
      if ((out==NULL)||(!(*out))) {
        // Can't create object
        throw Exception("Error opening file");
      }
    Ensuite tu peux ajouter du texte à la fin du fichier:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if (out) {
      (*out)<<Memo1->Text.c_str()<<endl;
    }
    Et finalement il faut fermer le fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if (out) {
      out->close();
      delete out; 
      out=null;
    }

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Par défaut
    merci sa a l'aire de fonctionner
    par contre j'ai remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ofstream(filename.c_str(),ios::app|ios::out);
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ofstream("convers.txt",ios::app|ios::out);

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Par défaut
    Pour ceux qui veulent charger un fichier dans un Memo/RichEdit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if (OpenDialog1->Execute())
    {
      for (int i=0; i<OpenDialog1->Files->Count; i++)
      {
         AnsiString chemin = OpenDialog1->Files->Strings[i];
         RichEdit1->Lines->LoadFromFile(chemin) ;
     
      }
    }

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 12/07/2006, 20h54
  2. [Tableaux] Charger le contenu d'une page dans une variable
    Par wishmastah dans le forum Langage
    Réponses: 7
    Dernier message: 15/05/2006, 16h00
  3. [Interbase] Ecrire le contenu d'un Memo dans un Blob
    Par Vulcanos dans le forum Bases de données
    Réponses: 3
    Dernier message: 06/12/2005, 08h44
  4. Insérer le contenue d'un memo dans une table mysql
    Par kijudr dans le forum Bases de données
    Réponses: 1
    Dernier message: 05/12/2005, 08h39
  5. Ecire le contenu d'un memo dans une bd
    Par ApollloCrid dans le forum Bases de données
    Réponses: 7
    Dernier message: 22/07/2005, 13h58

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