streamstring在c++中的应用案例分享

avatar
作者
猴君
阅读量:0

std::stringstream 是 C++ 标准库中的一个类,它允许你将字符串视为流对象进行操作

  1. 字符串拼接:
#include<iostream> #include <sstream> #include<string>  int main() {     std::stringstream ss;     ss << "Hello, " << "World!"<< std::ends;     std::string str = ss.str();     std::cout<< str<< std::endl;     return 0; } 
  1. 字符串分割:
#include<iostream> #include <sstream> #include<vector> #include<string>  int main() {     std::string input = "C++ is a general-purpose programming language.";     std::istringstream iss(input);     std::vector<std::string> words;      std::string word;     while (iss >> word) {         words.push_back(word);     }      for (const auto& w : words) {         std::cout << w << std::endl;     }      return 0; } 
  1. 数值与字符串之间的转换:
#include<iostream> #include <sstream> #include<string>  int main() {     int num = 42;     std::stringstream ss;     ss<< num;     std::string num_str = ss.str();     std::cout << "Number as string: "<< num_str<< std::endl;      double dnum = 3.14;     ss.str(""); // 清空 stringstream     ss << dnum;     std::string dnum_str = ss.str();     std::cout << "Double as string: " << dnum_str<< std::endl;      return 0; } 
  1. 从文件中读取并解析数据:
#include<iostream> #include <fstream> #include <sstream> #include<string> #include<vector>  int main() {     std::ifstream file("data.txt");     std::string line;     std::vector<int> numbers;      while (std::getline(file, line)) {         std::istringstream iss(line);         int num;         while (iss >> num) {             numbers.push_back(num);         }     }      for (const auto& n : numbers) {         std::cout << n << std::endl;     }      return 0; } 

这些示例展示了 std::stringstream 在 C++ 中的一些常见应用。通过使用 std::stringstream,你可以方便地处理字符串和其他数据类型之间的转换,以及对字符串进行分割、拼接等操作。

广告一刻

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