size_of_elements 是一次讀取的大小,number_of_elements 是讀取的次數。
size_t fread(void *ptr, size_t size_of_elements,
size_t number_of_elements, FILE *a_file);
size_of_elements 是一次寫入的大小,number_of_elements 是寫入的次數。
size_t fwrite(const void *ptr, size_t size_of_elements,
size_t number_of_elements, FILE *a_file);
[dywang@deyu zzz]$ vim fileio4.c
[dywang@deyu zzz]$ cat fileio4.c
#include <stdio.h>
int main( int argc, char *argv[] ) {
FILE *fp1, *fp2;
char ch;
fp1 = fopen( argv[1], "rb" );
fp2 = fopen( argv[2], "wb" );
if( fp1 != NULL) {
while ( fread( &ch, sizeof(ch), 1, fp1) != 0 )
fwrite( &ch, sizeof(ch), 1, fp2 );
}
else {
printf("File %s does not exist.\n", argv[1]);
}
fclose(fp1);
fclose(fp2);
return 0;
}
[dywang@deyu zzz]$ gcc -o fileio4 fileio4.c
[dywang@deyu zzz]$ ./fileio4 fileio1 fileio1.bak
[dywang@deyu zzz]$ diff fileio1 fileio1.bak