istringstream是一个比较有用的c++的输入输出控制类。
C++引入了ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含这个头文件。
istringstream类用于执行C++风格的串流的输入操作。
ostringstream类用于执行C风格的串流的输出操作。
strstream类同时可以支持C风格的串流的输入输出操作。
istringstream的构造函数原形如下:
istringstream::istringstream(string str);
它的作用是从string对象str中读取字符。
txt中数据格式如下:
读取方法:使用stream流进行读取
源码如下:
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
using namespace std;
int main()
{
//加载txt数据
float a=0, b=0, c=0;
ifstream in("test.txt");
string line;
if (in) // 有该文件
{
while (getline(in, line))
{
//cout << line << endl;
istringstream str(line);
string out;
while (str >>a>>b>>c) {
cout << a<<" "<<b << " " <<c << endl;
}
}
}
else // 没有该文件
{
cout << "no such file" << endl;
}
return 0;
}
结果输出: