Use fread function to read file content to a buffer

Syntax

C fread function has the following syntax.

size_t fread(void *buf, size_t size, size_t count, FILE *stream);

C fread function is from header file stdio.h.

Description

C fread function reads count number of objects by size and stores them in *buf and returns the number of items actually read.

Use feof() to determine the end of file. Use ferror() to determine the error.

Example

Use C fread function to read file content to a buffer


#include <stdio.h>
#include <stdlib.h>
// ww w  . ja v  a2  s . com
int main(void){
  FILE *fp;
  float bal[5] = { 1.1F, 2.2F, 3.3F, 4.4F, 5.5F };
  int i;

  if((fp=fopen("test", "wb"))==NULL) {
    printf("Cannot open file.\n");
    exit(1);
  }

  if(fwrite(bal, sizeof(float), 5, fp) != 5)
    printf("File read error.");
    fclose(fp);

  if((fp=fopen("test", "rb"))==NULL) {
    printf("Cannot open file.\n");
    exit(1);
  }

  if(fread(bal, sizeof(float), 5, fp) != 5) {
    if(feof(fp)) {
       printf("Premature end of file.");
    }else {
       printf("File read error.");
    }
  }
  fclose(fp);

  for(i=0; i<5; i++){
    printf("%f ", bal[i]);
  }
  return 0;
}

The code above generates the following result.





















Home »
  C Language »
    Function Reference »




assert.h
ctype.h
math.h
setjmp.h
signal.h
stdio.h
stdlib.h
string.h
time.h
wctype.h