В С удобнее всего читать через fscanf.
/* fscanf example */
#include <stdio.h>
int main ()
{
char str [80];
float f;
FILE * pFile;
pFile = fopen ("myfile.txt","w+");
fprintf (pFile, "%f %s", 3.1416, "Hello");
rewind (pFile);
fscanf (pFile, "%f", &f);
fscanf (pFile, "%s", str);
fclose (pFile);
printf ("I have read: %f and %s \n",f,str);
return 0;
}
Выведет
I have read: 3.141600 and Hello
а если есть С++ то можно через потоки ввода-вывода - так ещё проще.
Но это конечно медленный способ. Самый быстро работающий способ - прочесть большой кусок файла и потом его обрабатывать.
habrahabr.ru/post/246257