C语言 文件操作(八)
1.删除文件或目录
int remove(char * filename);
【参数】filename为要删除的文件名,可以为一目录。如果参数filename 为一文件,则调用unlink()处理;若参数filename 为一目录,则调用rmdir()来处理。
【返回值】成功则返回0,失败则返回-1,错误原因存于errno。
#include <stdio.h>
#include <stdlib.h>
int main()
{
if(remove("f:\\lanyue.txt") == 0){
puts("删除成功");
}else{
perror("remove");
}
return(0);
}
2.重命名文件
int
rename
(
char
* oldname,
char
* newname);
【参数】oldname为旧文件名,newname为新文件名。
【返回值】修改文件名成功则返回0,否则返回-1。
重命名文件:
如果newname指定的文件存在,则会被删除。
如果newname与oldname不在一个目录下,则相当于移动文件。
重命名目录:
如果oldname和oldname都为目录,则重命名目录。
如果newname指定的目录存在且为空目录,则先将newname删除。
对于newname和oldname两个目录,调用进程必须有写权限。
重命名目录时,newname不能包含oldname作为其路径前缀。例如,不能将/usr更名为/usr/foo/testdir,因为老名字( /usr/foo)是新名字的路径前缀,因而不能将其删除。
eg:
#include <stdio.h>
#include <stdlib.h>
int main()
{
if(rename("f:\\lanyue.txt","f:\\ly.txt") == 0){
puts("重命名成功");
}else{
perror("rename");
}
return(0);
}