C函数fwrite()不写入文件
我正在尝试将tempGroupFile
结构写入GroupFile
。 写入时fwrite()
返回1,但实际上没有数据写入文件GroupFile
。 函数printRec()
打印出屏幕上的结构。 data
是结构的变量。 这些操作后,文件GroupFile
为空。 码:
GWTemp = fopen(tempGroupFile, "rb"); GW = fopen(GroupFile, "wb"); if((GW == NULL) || (GWTemp == NULL)) { puts("Failed to open file."); fflush(stdin); getchar(); return 0; } while(fread(&data, sizeof data, 1, GWTemp)) { if(fwrite(&data, sizeof data, 1, GW)) { printRec(data); } }
您需要在while循环后使用fclose(GW)关闭文件。 这样可以确保刷新所有缓冲区以便写入文件。