如何在下一个代码中检查文件结尾。我尝试编写可以逐个读取wchar_t符号的函数,而某些函数可以读取早期符号,但是如果读取了EOF,则函数必须停止。
wchar_t wchr[1];
BOOL b = TRUE;
do
{
b = ReadFile(hReadFile, wchr, sizeof(wchar_t), &dw, NULL);
if(!b)break; //it doesn't work
tempGetLine[size] = wchr[0];
size++;
}while(wchr[0] != endSymbol);
答案 0 :(得分:1)
检查ReadFile
是否在文件末尾的方法是检查已读取的字节数与请求的数量。那就是:
if(!b)break;
应为:
if(dw != sizeof(wchar_t)) break;