我有一个函数,它接受一个文件指针(FILE * file
)并复制该文件中的所有内容。现在,是否可以删除此文件中的所有内容?
我没有文件名,因此无法再次使用fopen(filename, "w")
。
我包含了stdio.h
和string.h
。
答案 0 :(得分:7)
您可以使用ftruncate()
系统调用使用其文件描述符清空文件,例如
ftruncate(fileno(fh), 0);
您可能希望通过调用rewind(fh)
来跟进,以便对文件进行任何进一步的写入,而不是在前一个偏移处。