get directory from file path c++

前端 未结 11 1428
梦如初夏
梦如初夏 2020-12-13 14:45

What is the simplest way to get the directory that a file is in? I\'m using this to find the working directory.

string filename = \"C:\\MyDirectory\\MyFile.b         


        
11条回答
  •  情书的邮戳
    2020-12-13 15:15

    The initialisation is incorrect as you need to escape the backslashes:

    string filename = "C:\\MyDirectory\\MyFile.bat";
    

    To extract the directory if present:

    string directory;
    const size_t last_slash_idx = filename.rfind('\\');
    if (std::string::npos != last_slash_idx)
    {
        directory = filename.substr(0, last_slash_idx);
    }
    

提交回复
热议问题