Musze skopiować plik binarny, i mam problem bo nie odczytuje mi całego pliku tylko początek, aż do ustalonego bufora. Szukałem na forum, ale nie znalazłem rozwiązania mojego problemu.
Mój kod obecnie wygląda następująco:
FILE *plik, *plik1;
char *bufor, *buf[2];
int iResult = 0, bloki = 1, i = 0;
int wielkosc_pliku = 0;
plik = fopen("c:\\testy\\1.jpg","rb");
fseek(plik,0,SEEK_END);
wielkosc_pliku = ftell(plik);
fseek(plik,0,SEEK_SET);
bufor = (char*)calloc(BUFOR,sizeof(char));
if(wielkosc_pliku>BUFOR){
bloki = (wielkosc_pliku/BUFOR);
if((wielkosc_pliku % BUFOR)>0)
bloki++;
}
do{
fseek(plik,BUFOR*i,SEEK_SET);
fread(bufor,sizeof(char),BUFOR,plik);
buf[i] = bufor;
i++;
}while(i<2);
fclose(plik);
plik1 = fopen("c:\\testy\\temp1.jpg","wb");
i=0;
do{
fseek(plik1,BUFOR*i,SEEK_SET);
bufor = buf[i];
fwrite(bufor,sizeof(char),BUFOR,plik1);
i++;
}while(i<2);
fclose(plik1);
w pętli do while jest na stale i<2 ponieważ na razie plik sie nie zmienia.
Z góry dziękuje za pomoc