c - 如何使用 system() 而不是 rename() 在 C 中重命名文件

标签 c printf system rename

我一直在尝试重命名我的 C 程序中的文件。对于分配,我们应该使用 System() cp,即使我已经使用 rename() 完成了它。这是我到目前为止所尝试过的,但它不起作用。我不确定我是否正确实现了 sprintf 命令:

char oldName[] = "database.tmp"; 
char newName[] = "database.csv";
char rename[100];
sprintf(rename,"cp %s %s", oldName, newName);
system(rename);

我还在 sprintf 函数中尝试过“cp -r %s %s”,但这也不起作用。

附注感谢您的帮助!

最佳答案

在system()函数中使用ren代替cp来重命名文件。

char oldName[] = "database.tmp"; 
char newName[] = "database.csv";
char rename[100];
sprintf(rename,"ren %s %s", oldName, newName);
system(rename);

关于c - 如何使用 system() 而不是 rename() 在 C 中重命名文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58879532/

相关文章:

c - fprintf 和 fwrite(将字节写入 fp)

C++ 可变参数和 vsprintf

c++ - system() 的奇怪行为

c++ - 为 C++ 可执行文件提供变量作为 MATLAB 系统命令的输入参数

c - C 中的基本字符串数组操作

c - 将这个简单的 C 代码转换为 VBA

c - 如何从字符串中获取 size_t?

c - 文件解密时出现 "EVP_DecryptFInal_ex: bad decrypt"如何解析

c# - .net 有免费的 printf 实现吗?

c++ - 获取 system() 的输出到一个变量中