首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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指定了该函数语义的许多附加细节。

代码语言:javascript
复制
#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);
}

输出:

代码语言:javascript
复制
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重命名功能

扫码关注腾讯云开发者

领取腾讯云代金券