1

我正在尝试制作一个程序,该程序将创建用户想要创建的目录总和。

这是我的代码:

#include <cstdlib>
#include <iostream>
#include<windows.h>

using namespace std;

int main(int argc, char *argv[])    {

    int nrDirs = 0;
    cin>> nrDirs;

    for (int i = 0; i <= nrDirs; i++) {
             CreateDirectory ("C:\\Users\\myName\\Desktop\\new", NULL);
    }
    system("PAUSE");
    return EXIT_SUCCESS;
}

现在我的问题是,我不知道如何重命名目录。我知道如何在 Objective-C 中做到这一点:

"C:\\Users\\myName\\Desktop\\new%i", i

但这在 c++ 中不起作用。:(

那么我该怎么做呢?

4

1 回答 1

3

使用可以使用CString::Format

dirName.Format("C:\\Users\\myName\\Desktop\\new%i", i);

使用可以使用std::stringstream

dirName << "C:\\Users\\myName\\Desktop\\new" << i;

使用可以使用sprintf

sprintf(dirName, "C:\\Users\\myName\\Desktop\\new%i", i);

对于上述所有情况,dirName您需要将其传递给CreateDirectory.

如果路径中的中间目录不存在,请使用SHCreateDirectory. 如果路径不存在,此 API 还会在路径中创建中间目录。

于 2012-06-21T03:28:49.560 回答