Bonjour à tous.
Je programme sur C++ Builder 6.
J'aimerais enregistrer un fichier dans un pointeur (pTestXML).
Malheureusement une limitation est effectué sur celui-ci...
Le pointeur ne contient que 5120 Bytes d'informations, alors que mon fichier est sensiblement plus gros.
Avez vous une idée pour résoudre ce problème?
Mon 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 FILE *pFile; size_t Result; char *pTextXML; long FileSize; // Ouverture du fichier XML pFile = fopen ("villes.xml","r"); fseek (pFile,0,SEEK_END); FileSize = ftell (pFile); // FileSize = 5123 rewind (pFile); // Reserve la mémoire pour enregistrer le fichier dans un buffeur pTextXML = (char*) malloc (sizeof(char)*FileSize); // Vérification que l'allocation à été effectuée if (pTextXML == NULL) { ShowMessage("Allocation de la mémoire échouée"); Application->Terminate(); } Result = fread (pTextXML,sizeof(char),FileSize,pFile); // Result = 5120 alors que pTextXML ne contient que 5120 Bytes de données...
Partager