创建文件夹结构

问题描述 投票:0回答:1

我正在尝试创建文件夹结构,例如这样的东西:

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),然后允许我在其中添加一个文件夹(user-我认为是因为它知道game在哪里),但如果我尝试在目录中包含多个文件夹,则似乎失败。

我希望能够使用此功能创建文件夹结构,但似乎不起作用。

同样,我确定我在这里使用的功能不正确,有人可以建议吗?

c++ visual-studio winapi
1个回答
0
投票

如果您使用的是C ++ 17 filesystem库,则它是标准库的一部分,因此您可以像这样使用它:

#include <filesystem>

std::filesystem::create_directories("c:\\game\\user\\user_profile");

并且如果您使用的是g ++,则需要添加“ -std = c ++ 17”和“ -lstdc ++ fs”标志。

© www.soinside.com 2019 - 2024. All rights reserved.