Bonjour à Tous,
J'utilise la fonction FileWrite pour écrire des données provenant d'une structure.
De ce côté, pas de problème.
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); }
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é :
Cette donnée sera affichée dans un TEdit.
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); }
Pouvez vous m'aider à résoudre mon problème ...
Etd'avance à Tous...
Partager