1. 基本使用
你可以使用 istringstream
从字符串中提取各种基本数据类型的值,如整数、浮点数、字符等。
#include <iostream>
#include <sstream>
#include <string>
int main() {
std::string str = "10 20.5 Hello";
std::istringstream iss(str);
int num;
double dbl;
std::string word;
iss >> num >> dbl >> word;
std::cout << "Integer: " << num << std::endl;
std::cout << "Double: " << dbl << std::endl;
std::cout << "String: " << word << std::endl;
return 0;
}
2. 循环提取数据
如果你有一个包含多个数据项的字符串,可以用循环来提取它们。
#include <iostream>
#include <sstream>
#include <string>
int main() {
std::string str = "1 2 3 4 5";
std::istringstream iss(str);
int num;
while (iss >> num) {
std::cout << "Number: " << num << std::endl;
}
return 0;
}
3. 使用 istringstream
进行类型转换
istringstream
也可以用来将字符串转换成不同的数据类型。
#include <iostream>
#include <sstream>
#include <string>
int main() {
std::string str = "12345";
std::istringstream iss(str);
int num;
iss >> num;
std::cout << "Converted number: " << num << std::endl;
return 0;
}