TCHAR szFilePath = _T("../../conf/upload/1.txt");去掉倒数第二个'/'后的数据.
时间: 2023-09-21 07:08:33 浏览: 69
您可以使用以下代码去掉路径中倒数第二个 `/` 后的数据:
```
TCHAR szFilePath[MAX_PATH];
_tcscpy_s(szFilePath, _T("../../conf/upload/1.txt"));
TCHAR* p = szFilePath + _tcslen(szFilePath) - 2; // 倒数第二个字符
while (p >= szFilePath && *p != '/') {
p--;
}
*(p + 1) = '\0';
```
这里的代码与前面的代码类似,只是将 `while` 循环中的判断条件从 `(*p != '/' && *p != '\\')` 改为了 `*p != '/'`,这样就只会去掉路径中倒数第二个 `/` 后面的部分。需要注意的是,如果路径中没有 `/`,则该代码会将整个路径截断,只留下路径的根目录部分。
相关问题
TCHAR szFilePath = _T("../../conf/upload/1.txt");去掉倒数第二个/后的数据
您可以使用以下代码去掉路径中倒数第二个 `/`(或 `\`)后的数据:
```
TCHAR szFilePath[MAX_PATH];
_tcscpy_s(szFilePath, _T("../../conf/upload/1.txt"));
TCHAR* p = szFilePath + _tcslen(szFilePath) - 2; // 倒数第二个字符
while (p >= szFilePath && (*p != '/' && *p != '\\')) {
p--;
}
*(p + 1) = '\0';
```
这里使用了指针 `p` 来指向倒数第二个字符,然后向前遍历,直到找到第一个 `/` 或 `\` 为止。最后将该字符后面的部分截断,即可得到去掉倒数第二个 `/`(或 `\`)后的路径。需要注意的是,如果路径中没有 `/` 或 `\`,则该代码会将整个路径截断,只留下路径的根目录部分。
TCHAR szFilePath = _T("../../conf/upload/1.txt");如何获取到_T("../../conf/uncompress”)路径
您可以使用以下代码获取目标路径:
```
TCHAR szUncompressPath[MAX_PATH];
PathCombine(szUncompressPath, _T("..\\..\\conf\\uncompress"), NULL);
```
这里使用了 PathCombine 函数来组合路径,第一个参数是目标路径缓冲区,第二个参数是要添加到路径的子路径,第三个参数为NULL表示只是简单地将子路径添加到目标路径中。请注意,这里使用的是 "..\\..\\conf\\uncompress" 而不是 "../../conf/uncompress" ,因为在Windows平台上通常使用反斜杠作为路径分隔符。
阅读全文