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 に答える