找到相对路径

时间:2013-08-01 10:41:08

标签: c++ c path

好的,所以我使用的方法_getcwd(cwd, _MAX_PATH)返回当前目录的完整路径。

我正在尝试将char *dir变量设置为仅保留folder3(我当前的文件夹名称)而不是整个路径。

为清楚起见,我希望dir能够持有:

folder3

dir代替:

c:\documents\folder1\folder2\folder3

如何摆脱导致我所在文件夹的所有部分?我已经工作了几个小时,无法通过互联网找到任何帮助。

2 个答案:

答案 0 :(得分:0)

// string path
int pos = path.rfind('\\');
string relativePath = pos.substr(pos + 1);

答案 1 :(得分:0)

int main( void )
{
   char buffer[_MAX_PATH];
   std::string bb,relative_path;
   if( _getcwd( buffer, _MAX_PATH ) == NULL )
      std::cout<< "Error !!" <<std::endl;
   else
   {
      bb=buffer;
      relative_path=bb.substr(bb.rfind("\\")+1);
      std::cout<<relative_path<<std::endl;

    }
}