std::rename
来自cppreference.com
在标头 <cstdio> 定义 | ||
int rename(constchar* old_filename, constchar* new_filename ); | ||
更改文件的文件名。以 old_filename 所指向的字符串标识该文件,以 new_filename 所指向的字符串标识新文件名。
若 new_filename 存在,则行为是实现定义的。
目录 |
[编辑]参数
old_filename | - | 指向空终止字符串的指针,字符串含有标识要重命名的文件的路径 |
new_filename | - | 指向空终止字符串的指针,字符串含有文件的新路径 |
[编辑]返回值
成功时为 0,错误时为非零值。
[编辑]注解
POSIX 规定了此函数语义上的许多额外细节,它们由 std::filesystem::rename 复制到 C++ 中。
[编辑]示例
运行此代码
#include <cstdio>#include <cstdlib>#include <fstream>#include <iostream> int main(){if(!std::ofstream("from.txt").put('a'))// 创建并写入文件{std::perror("创建 from.txt 时发生错误");returnEXIT_FAILURE;} if(std::rename("from.txt", "to.txt")){std::perror("重命名时发生错误");returnEXIT_FAILURE;} std::cout<<std::ifstream("to.txt").rdbuf()<<'\n';// 打印文件returnEXIT_SUCCESS;}
输出:
a
[编辑]参阅
(C++17) | 移动或重命名一个文件或目录 (函数) |
删除文件 (函数) | |
rename 的 C 文档 |