记录一种操作字符串获取文件名字的操作方式,方便后期的使用。示例:
输入:"D:/code/Test/Test.txt"
输出:"Test.txt"
设计思路:
首先查找路径中最后一个”/“,然后再通过字符串截取的方式,获取文件名。
代码具体实现:
#include<string>
#include <ctype.h>
#define ISPATHPART(c) ((c)=='/'||(c)=='\\')std::string GetName(const std::string& strPathFile)
{if (!strPathFile.empty()){int number = 0, index = 0;if (isalpha(strPathFile[0]) && strPathFile[1] == ':'){index = 1;number = index + 1;}index++;int nlen = strPathFile.length();while (index<nlen){if (ISPATHPART(strPathFile[index])){number = index + 1;}index++;}return std::string(strPathFile.c_str()+ number, nlen-number);}return"";
}int main()
{std::string path = "D:/code/Test/Test.txt";path = GetName(path);return 0;
}
测试结果: