我正在尝试创建文件夹结构,例如:
c:\game\user\user_profile\...
但是当我使用CreateDirectory()
函数时,它似乎并没有按照我想要的去做。我想我没有正确使用它,所以我很乐意就该函数的实际作用进行快速解释。这是我的代码:
void CreateDir(const char* path) {
if (!CreateDirectory(path, NULL))
{
cout << "Fail";
return;
}
else
cout << "Success?";
}
int main()
{
CreateDir("c:\\game\\user\\user_profile");
system("pause");
}
该函数似乎允许我创建一个单独的文件夹( game ),然后允许我在其中添加1个文件夹(user
-我认为是因为知道game
在哪里),但是如果我尝试在目录中包含多个文件夹,它似乎会失败。
我希望能够使用此功能创建文件夹结构,但似乎不起作用。
同样,我确定我在这里使用的功能不正确,有人可以建议吗?
答案 0 :(得分:1)
如果您使用的是C ++ 17 filesystem
库,则它是标准库的一部分,因此您可以像这样使用它:
#include <filesystem>
std::filesystem::create_directories("c:\\game\\user\\user_profile");
如果使用的是g ++,则需要添加“ -std = c ++ 17”和“ -lstdc ++ fs”标志。