rename
在头文件<stdio.h>中定义 | | |
---|---|---|
int rename(const char * old_filename,const char * new_filename); | | |
更改文件的文件名。该文件由指向的字符串标识old_filename
。新文件名由指向的字符串标识new_filename
。
如果new_filename
存在,则行为是实现定义的。
参数
old_filename | - | 指向包含标识要重命名的文件的路径的以null结尾的字符串的指针 |
---|---|---|
new_filename | - | 指向包含文件新路径的以null结尾的字符串的指针 |
返回值
0
一旦成功或错误发生非零值。
注意
POSIX指定了该函数语义的许多附加细节。
例
#include <stdio.h>
int main(void)
{
FILE* fp = fopen("from.txt", "w"); // create file "from.txt"
if(!fp) { perror("from.txt"); return 1; }
fputc('a', fp); // write to "from.txt"
fclose(fp);
int rc = rename("from.txt", "to.txt");
if(rc) { perror("rename"); return 1; }
fp = fopen("to.txt", "r");
if(!fp) { perror("to.txt"); return 1; }
printf("%c\n", fgetc(fp)); // read from "to.txt"
fclose(fp);
}
输出:
a
参考
- C11标准(ISO / IEC 9899:2011):
- 7.21.4.2重命名功能(p:302-303)
- C99标准(ISO / IEC 9899:1999):
- 7.19.4.2重命名功能(p:268-269)
- C89 / C90标准(ISO / IEC 9899:1990):
- 4.9.4.2重命名功能
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com