平台是 ARM 上的 Ubuntu Linux。我想将字符串写入文件,但我希望每次都截断文件然后写入字符串,即不追加。
我有这个代码:
f=fopen("/home/user1/refresh.txt","w");
fputs( "{"some string",f);
fflush(f);
ftruncate(fileno(f),(off_t)0);
flcose(f);
如果我运行它然后检查文件,它的长度为零,打开时,里面什么都没有。如果我删除fflush
呼叫,它将不是 0(将是 11),当我打开它时,其中会有“一些字符串”。这是正常行为吗?我调用没有问题fflush
,但我想在循环中执行此操作,调用fflush
可能会大大增加执行时间。