FILE *content;
char buff[5];
content = fopen(AVARAGE_TIME_DCMETER,"w");
sprintf(buff,"%ld-",g_taskTime.avarageTime); //g_taskTime.avarageTime是一个长整形数据
if (content) {
fseek(content, g_taskTime.countToFile*sizeof(buff), SEEK_SET); // g_taskTime.countToFile 是一个长整形的数据,会递增
fwrite(buff, sizeof(buff), 1, content);
fclose(content);
}
g_taskTime.countToFile++;
由于这段程序,会不断调用,
按理说,写入文件的数据会是 16-17-28-类似这样,
但实际上,查看写入文件只有最后28-,
硬是没看出哪里出错,哪位高手火眼睛睛帮忙指出一下
"r ":只读方式打开一个文本文件 "rb ": 只读方式打开一个二进制文件
"w ":只写方式打开一个文本文件 "wb ": 只写方式打开一个二进制文件
"a ":追加方式打开一个文本文件 "ab ": 追加方式打开一个二进制文件
"r+ ":可读可写方式打开一个文本文件 "rb+ ": 可读可写方式打开一个二进制文件
"w+ ":可读可写方式创建一个文本文件 "wb+ ": 可读可写方式生成一个二进制文件
"a+ ":可读可写追加方式打开一个文本文件 "ab+ ": 可读可写方式追加一个二进制文件
频繁打开文件,用追加的方式的话,用a+就可以啦!