删除文件结尾

时间:2010-10-23 17:26:08

标签: c winapi

例如,如果我将WriteFile调用到文件的末尾,后来我想删除写入的字节,我该怎么办呢?我是否必须将文件的内容读入缓冲区,重新创建文件,并写入所需的字节,还是有更简单的方法?

2 个答案:

答案 0 :(得分:3)

Seek到你要截断的文件位置(如果你还没有),然后调用恰当命名的SetEndOfFile()函数。

答案 1 :(得分:1)

在Posix兼容系统上(Unix,Linux和其他系统(Windows 7再次使用Posix层))

int truncate(const char *path, off_t length); 
int ftruncate(int fildes, off_t length);

http://www.opengroup.org/onlinepubs/009695399/functions/truncate.html

http://www.opengroup.org/onlinepubs/009695399/functions/ftruncate.html