获取临时文件字符串并添加自定义文件夹

Get string of temp file and add custom folder

我是 C++ 的新手,我一直在思考如何在 Windows 上获取用户临时文件夹的字符串并向其附加自定义文件夹名称。

例如"\Users\user\AppData\Local\Temp\NameOfCustomFolder"

我试过这个:

    std::string szOutput{};
    TCHAR path_buf[MAX_PATH];
    DWORD ret_val = GetTempPath(MAX_PATH, path_buf);
    if (ret_val > MAX_PATH || (ret_val == 0))
    {
        std::cout << "GetTempPath failed";
    }
    else
    {
        szOutput = path_buf, "NameOfCustomFolder\file.exe"
    }

    return szOutput;

这不会执行您想要的字符串连接

szOutput = path_buf, "NameOfCustomFolder\file.exe";

宁愿做

szOutput = std::string{path_buf} + "NameOfCustomFolder\file.exe";

如果你会用C++17,我建议std::filesystem::path::append

它将处理路径分隔符,并使跨平台变得容易。