stdio.h

fread

Описание

size_t fread( void *ptr, size_t size, size_t n, FILE* fp )

Функцията прочита n на брой елемента, всеки с размер size от файла сочен от указателя fp и ги записва в адреса сочен от ptr.

Параметри

void *ptr

Указател към адреса където ще бъдат записани данните.

size_t size

Размер на елемента който трябва да бъде прочетен.

size_t n

Брой елементи който трябва да бъдат прочетени.

FILE* fp

Указател към файл върнат от fopen.

Връщани стойности

Връща броя на елементите успешно прочетени от файла. Ако четенето достигне края на файла функцията връща по- малък брой от зададения в n или нула.

Примери

от: adviser at cpp-examples dot com   Свали кода във файл
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <ctype.h>
  4.  
  5. int main ()
  6. {
  7.     int r = 0;
  8.     char text[128] = "";
  9.  
  10.     FILE *fp = fopen("test.txt","r");
  11.     if(fp)
  12.     {
  13.         r = fread(text, 1, 120, fp);
  14.         fclose(fp);
  15.     }
  16.     printf("Брой прочетени символи: %d", r);
  17.     printf("%s", text);
  18.     return 0;
  19. }
от: adviser at cpp-examples dot com   Свали кода във файл
  1. #include <stdio.h>
  2.  
  3. struct Name
  4. {
  5.     char first[20];
  6.     char second[20];
  7.     char last[20];
  8. };
  9.  
  10. int main ()
  11. {
  12.     int r = 0;
  13.     Name names[20];
  14.  
  15.     FILE *fp = fopen("test.txt","r");
  16.     if(fp)
  17.     {
  18.         r = fread(names, sizeof(Name), 20, fp);
  19.         fclose(fp);
  20.     }
  21.  
  22.     for(int i=0; i<r; i++)
  23.     {
  24.         printf("Име: %.20s ", names[i].first);
  25.         printf("Презиме: %.20s ", names[i].second);
  26.         printf("Фамилия: %.20s ", names[i].last);
  27.     }
  28.     return 0;
  29. }

Виж също

fwrite - пише във файл