Copier Edit dans fichier TXT (...sans Dialog)

Résolu
cs_papi2 Messages postés 44 Date d'inscription vendredi 22 avril 2005 Statut Membre Dernière intervention 6 mars 2009 - 20 mai 2008 à 14:01
cs_papi2 Messages postés 44 Date d'inscription vendredi 22 avril 2005 Statut Membre Dernière intervention 6 mars 2009 - 20 mai 2008 à 22:54
Bonjour,


Lorsque je copie le contenu de l'Edit dans le fichier texte:
- 1ère fois... pas de problèmes.
-2ème fois... 3ème... etc... (chaque fois, avant de copier le nouveau texte, je supprime le fichier TXT et le remplace par un autre du même nom ). Si je fais 10 changements de texte, en bout de ligne j'ai une sorte de 0 (rectangulaire) qui s'affiche 10 fois dans le fichier TXT.
Lorsque je récupère tous çà,:
- dans l'Edit... j'ai des I en bout de chaque ligne.
- dans une MessageBox... j'ai des intervales (qui correspondent à chaques I ) entre chaque ligne.
- dans un Static... idem à MessageBox.

Si vous aviez quelque chose à me proposer... Merci.
Ne me demandez pas trop d'explications... vous savez... je ne suis pas trop...!

J'ai DEV-C++ 4.9.9.2
Merci encore.

Papi2

Je mets le code :

//Action du début du bouton : dBouton.
        {
  // Va contenir le texte du EditBox
       char *LeText = NULL;
   // Va contenir le nombres de caractères dans le EditBox
         unsigned int TextLen = 0;
   // Récupère le nombres de caractères dans le EditBox
   TextLen = GetWindowTextLength(EditHandle);
     // S'il n'est pas vide
          if (TextLen)
           {
          // Alloue de la mémoire pour stocker le texte
            LeText = new char[(TextLen + 2)];
               // Récupère le texte
               TextLen = GetWindowText(EditHandle, LeText, (TextLen + 1));
             // Si aucune erreur et le EditBox écrit
                 if (TextLen)
                 {       
              // Affiche le texte
               MessageBox(hwnd, LeText, "Voilà le texte", MB_OK);         
              // Détruit le fichier "Tte1.tx"
             DeleteFile("Tte1.txt");
              //  Crée et copie le texte dans le fichier : "Tte1.txt"
                FILE *fichier;
                 fichier=fopen("Tte1.txt","a");
                 fputs(LeText, fichier);
                 fclose(fichier);
         ShellExecute(NULL, "open", "Tte1.txt", 0, 0, SW_SHOWNORMAL);                       
                    }
                  else
                    {
           // Erreur lors de la récupération du texte
                MessageBox(hwnd, "Erreur lors de la récupération du texte", "Erreur", MB_OK);
                        }
                // Libère la mémoire
                    delete [] LeText;
                    }
                  else
                     {
                // Le EditBox est vide
                MessageBox(hwnd, "Le EditBox est vide!", "Edit Vide", MB_OK);
                        }
                   return 0;
                 }
        

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
20 mai 2008 à 14:14
DeleteFile est inutile.


HANDLE hfl;
DWORD v;
TextLen = GetWindowText(EditHandle, LeText, (TextLen + 1));
if(!TextLen) goto delTEXT;
hfl = CreateFile("Tte1.txt", GENERIC_WRITE, 0, 0, CREATE_ALWAYS, 0, 0);
if(hfl == INVALID_HANDLE_VALUE) goto delTEXT; // C'EST FOUTU
WriteFile(hfl, LeText, TextLen, &v, 0);
CloseHandle(hfl);
delTEXT:
delete [] LeText;

ciao...
BruNews, MVP VC++
3
cs_papi2 Messages postés 44 Date d'inscription vendredi 22 avril 2005 Statut Membre Dernière intervention 6 mars 2009
20 mai 2008 à 22:54
Bonsoir,

Merci encore et encore...Brunews.
Pour moi tout ceci est une activité de loisir et bien que complètement nul en programmation, à l'image du bricoleur du dimanche, chaque fois qu'un programme (aussi lourd et mal écrit qu'il soit) fonctionne... c'est du plaisir !
Par la suite j'essaie e les améliorer mais... je n'ai pas trop les capacités pour celà.


En tous cas... merci encore (j'essaie de vous ennuyer le moins possible!).


C'est vraiment dommage que nous n'ayions pas la possibilité de nous rencontrer... mais bon... c'est comme çà, c'est Internet !

Bonne continuation.

Papi2
0
Rejoignez-nous