string流一直掌握得比較淺,結果就在某個地方卡住了= = 於是發現istringstream
(輸入string流)特別好用。
需要把文件流中數據輸出到向量u之中,但一組數據中有個數不一定的整數需要存放到interest
中,這時候istringstream就派上用場了。
vector<Users> u;
string temp;
for(string s;getline(in,s);)
{
for(istringstream sin(s);sin>>temp;)
{
int i=0;
while(!sin.eof())
{
sin>>i;
temp.interest.push_back(i);
}
}
u.push_back(temp);
}
先把一整行都讀取到string
中,然後string
逐步輸出到向量中,此時sin
就是一個流,類似於文件流,可以用eof()
函數判斷是否結束。
istringstream
需要#include<sstream>