problemy z fread () zawsze zwracane 1

Patrzyłem na podobne pytania, ale moje są nieco inne. Upewnij się, że otwieram plik w trybie binarnym i sprawdzam, czy wystąpił błąd podczas odczytu.

Zawartość pliku:

message1, message2, 53467

program do czytania prostego pliku:

int bytesRead;
FILE* CSV;
CSV = fopen("\\Temp\\csv.txt", "rb");
char dataBuf[128];

while ( (bytesRead = fread(dataBuf, 1, sizeof(dataBuf), CSV) > 0) )
{
        if (ferror(CSV))
            //handle error

        //do stuff with dataBuf contents
}

fread () zawsze zwraca 1. ferror również nie jest wprowadzany, więc nie ma błędu odczytu pliku. Jednak tablica danych dataBuf jest wypełniona całą wiadomością z pliku. Używam fread w połączeniu z inną funkcją, więc muszę wiedzieć, ile bajtów odczytano za pomocą fread (). Jakieś pomysły?

questionAnswers(1)

yourAnswerToTheQuestion