stringstream如何解析字符串

avatar
作者
猴君
阅读量:0

stringstream 是 C++ 中的一个类,它位于 <sstream> 库中。这个类允许你使用流操作符 <<>> 来读取和写入字符串。你可以使用 stringstream 来解析字符串,例如提取子字符串、转换数据类型等。

下面是一些使用 stringstream 解析字符串的例子:

  1. 提取子字符串:
#include <iostream> #include <sstream> #include <string>  int main() {     std::string input = "Hello, my name is John Doe.";     std::stringstream ss(input);     std::string name;      // 提取名字     getline(ss, name, ' '); // 使用空格作为分隔符     std::cout << "Name: " << name << std::endl;      return 0; } 
  1. 转换数据类型:
#include <iostream> #include <sstream> #include <string>  int main() {     std::string input = "123 45.67";     std::stringstream ss(input);     int age;     double salary;      // 转换整数和浮点数     ss >> age >> salary;     std::cout << "Age: " << age << ", Salary: " << salary << std::endl;      return 0; } 
  1. 解析逗号分隔的值:
#include <iostream> #include <sstream> #include <string>  int main() {     std::string input = "apple,banana,orange";     std::stringstream ss(input);     std::string fruit;      // 使用逗号作为分隔符     while (getline(ss, fruit, ',')) {         std::cout << "Fruit: " << fruit << std::endl;     }      return 0; } 

这些例子展示了如何使用 stringstream 来解析字符串。你可以根据需要调整分隔符和数据类型,以便正确地解析你的字符串。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!