Bonjour à Tous,
J'utilise la fonction FileWrite pour écrire des données provenant d'une structure.
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
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
 int iFileHandle;
 
 struct Poussin
        {
                char Pous1[4];
                char Pous2[4];
        }Nais;
 
 StrCopy (Nais.Pous1,MaskEdit1->Text.c_str());
 StrCopy (Nais.Pous2,MaskEdit2->Text.c_str());
 
 iFileHandle = FileCreate("C:\\Poussin.txt");
 
 FileWrite(iFileHandle,Nais.Pous1, sizeof(Nais.Pous1));
 FileWrite(iFileHandle,Nais.Pous2, sizeof(Nais.Pous2));
 
 FileClose(iFileHandle);
}
De ce côté, pas de problème.
Par contre, j'essaye d'utiliser la fonction FileRead pour récupérer, non pas la totalité du fichier, mais une partie des données.
Pour les besoins de débuggage, j'affiche un ShowMessage : données bien présentes. Voici le code utilisé :
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
void __fastcall TForm1::BitBtn2Click(TObject *Sender)
{
 int iFileHandle;
 int iFileLength;
 int iBytesRead;
 char *psz;
 
 
 iFileHandle = FileOpen("C:\\Poussin.txt", fmOpenRead);
 iFileLength = FileSeek(iFileHandle,0,2);
 ShowMessage(iFileLength);
 
 FileSeek(iFileHandle,0,0);
 
 //Création de la variable dynamique pszEditText
 char *pszEditText = new char[Edit1->Text.Length()+1];
 
 iBytesRead = FileRead(iFileHandle, pszEditText, iFileLength);
 ShowMessage(pszEditText);
 
 psz = StrEnd(pszEditText);
 Edit1->Text = "";
 
 while (psz >= &pszEditText[0])
  {
    psz--;
    Edit1->Text = Edit1->Text + *psz;
  }
 delete [] pszEditText;
 
 FileClose(iFileHandle);
}
Cette donnée sera affichée dans un TEdit.
Pouvez vous m'aider à résoudre mon problème ...

Et d'avance à Tous...