c++如何从string类型中获取图片全名
时间: 2023-07-15 15:11:47 浏览: 46
如果你想从一个字符串中获取图片的全名,可以通过以下步骤实现:
1. 首先,你需要找到字符串中图片名字的起始位置和结束位置。这可以通过字符串查找函数实现,例如find()函数。
2. 找到图片名字的起始位置和结束位置后,你可以使用substr()函数来从字符串中提取出图片名字。
3. 最后,你需要将图片名字和图片所在的文件夹名字拼接起来,得到图片的全名。
下面是一个示例代码实现:
```c++
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "这里是图片的路径:/home/user/pictures/cat.jpg";
// 找到图片名字的起始位置和结束位置
size_t pos_start = str.find_last_of("/") + 1;
size_t pos_end = str.find_last_of(".");
// 提取出图片名字
string img_name = str.substr(pos_start, pos_end - pos_start);
// 拼接文件夹名字和图片名字,得到图片全名
string full_name = "pictures/" + img_name + ".jpg";
cout << "图片全名:" << full_name << endl;
return 0;
}
```
在上述示例代码中,我们通过find()函数和substr()函数分别找到了图片名字的起始位置和结束位置,并提取出了图片名字。然后,我们将图片名字和文件夹名字拼接起来,得到了完整的图片全名。