今天写个小程序需要将文件全部清空,原先想的办法是用可写的方式读取文件后再全部写入空字符串""。但是需要打开文件再关闭再打开,比较麻烦,搜索后发现可以使用ftruncate可以清空文件,如:
ftruncate(fileno(fp), 0);
#include <unistd.h>
原型:int ftruncate(int fildes, off_t length);
注意:
1.清空文件后,需要使用rewind或fseek将文件指针移到文件头。
2.ftruncate第一个参数是文件描述符int,而不是文件指针FILE *
转载于:https://blog.51cto.com/zensoothjoy/1314678