在cpp中简单地重命名文件而不需要在其中写入任何内容

时间:2017-07-12 13:29:28

标签: c++ c

我的pcl模块生成输出文件result.pcd。这个模块在一个循环中运行,因此它最多需要100个pcd个文件,并且每次迭代都会生成一个输出文件result.pcd。问题是result.pcd在每次迭代中被覆盖,所以在下一次迭代之前,我试图重命名这个文件。我希望此文件以递增方式命名(即file1.pcdfile2.pcdfile3.pcd ...)

我的重命名代码不符合语法。请帮帮我。

我的目标不是在新文件中写任何内容,而是逐步重命名旧文件。 (请在代码中包含注释和标题。)

如果我的思维方法不对,我需要专家建议,指出我正确的方向。

#include <stdio.h>
#include <string.h>

int main()
{
    while (true) 
    {
        int k = 1;
        char newname[] = "file%i.txt", k;
        rename("result.pcd", newname);
        k++;
        return 0;
    }
}

新文件重命名为file%i.txt而不是file1.txt

1 个答案:

答案 0 :(得分:0)

感谢您提出的宝贵建议.sprintf()是解决我的问题的方法。为代码提供未来帮助的代码。

    int k = 1;
    char filename[16]; 
    sprintf( filename, "file%d.txt", k );  
    rename("file.txt", filename);
    k++;
    return(0);