В C, как узнать из FILE *, пуст ли этот файл или нет?
fseek до конца, затем проверьте, возвращает ли ftell 0.
fseek
ftell
Как это:
bool isEmpty(FILE *file) { long savedOffset = ftell(file); fseek(file, 0, SEEK_END); if (ftell(file) == 0) { return true; } fseek(file, savedOffset, SEEK_SET); return false; }
Если вы программируете для системы POSIX:
struct stat sb; if( fstat(fileno(file), &sb) ) { /* error */ } if( sb.st_size == 0 ) { /* file is empty */ }