C++ rename() 重命名文件函数
rename() 函数原型
int rename( const char *oldname, const char *newname );
rename()
函数接受两个参数:oldname
、newname
,并返回一个整数值。它将由 oldname
指向的字符串所表示的文件重命名为 newname
指向的字符串。
它定义在 <cstdio>
头文件中。
rename() 参数
oldname
:指向包含文件旧名称及其路径的字符串的指针,用于重命名。newname
:指向包含文件新名称及其路径的字符串的指针。
rename() 返回值
rename()
函数返回:
- 如果文件成功重命名,则返回零。
- 如果发生错误,则返回非零值。
示例 1:rename() 函数如何工作
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
char oldname[] = "file_old.txt";
char newname[] = "file_new.txt";
/* 删除存在的文件 */
if (rename(oldname, newname) != 0)
perror("Error renaming file");
else
cout << "File renamed successfully";
return 0;
}
当你运行程序时,输出将是:
- 如果文件成功重命名:
File renamed successfully
- 如果文件不存在:
Error renaming file: No such file or directory
rename()
函数也可用于将文件移动到不同位置。这可以通过为文件的新名称提供不同的路径来完成。
示例 2:rename() 函数用于移动文件
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
char oldname[] = "C:\\Users\\file_old.txt";
char newname[] = "C:\\Users\\New Folder\\file_new.txt";
/* 删除存在的文件 */
if (rename(oldname, newname) != 0)
perror("Error moving file");
else
cout << "File moved successfully";
return 0;
}
当你运行程序时,输出将是:
- 如果文件成功移动:
File moved successfully
- 如果文件不存在:
Error moving file: No such file or directory