philippe06 | Bonjour, j'essaye de lire un fichier sous windows pour concatener plusieurs fichiers de environ 90 Ko chacun. Hors quand je n'arrive pas à lire mon fichier jusqu'au bout ... j'ai systèmatiquement u feof ou un read(blabla) ==0 avant la fin réelle du fichier. Exemple de code:
Code :
- #include <stdio.h>
- #include <stdlib.h>
- #include <fcntl.h>
- int main(int argc, char *argv[])
- {
- char *buffer=(char*) malloc(sizeof(char)*352*288);;
- int size,lu,fd;
- fd=open("projet_compression.pdf",O_RDONLY);
- size=0;
- lu=0;
- do
- {
- //printf("%d ",feof(fichier));
- lu=read(fd,&buffer[size],10);
- // printf("%c\n",buffer[size]);
- size+=lu;
-
- } while(lu>0);
- //printf("%d\n",feof(fichier));
- close (fd);
- printf("%d\n",size);
- getch();
-
- return 0;
- }
|
Mon fichier projet_compression fait ~ 235 Ko et mon programme me retourne une size de ~1.8 Ko. J'ai essayé avec fread, read, scanf ... tjrs le même problème. Je suis sous Windows XP (NTFS) avec Bloodshed C++. Merci pour toutes vos remarques et suggestions. ---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
|