字符串流函数
Posted
技术标签:
【中文标题】字符串流函数【英文标题】:stringStream functions 【发布时间】:2015-08-03 09:44:46 【问题描述】:Morgan 201128374 4383745,12394 5455.30
drew 22223 91939,5324 55.9
stringstream strm;
sstream strm(s)
strm.str() return a copy of a string
strm.str(s) copies the string into strm return void.
当我将变量分配给 Stringstream 时,我正在寻找更多功能。我将如何忽略标点符号?我的书只列出了上面这两个函数。
struct PersonInfo
string name;
vector<string> numbers;
string line, word;
vector<PersonInfo> people;
while(getline(cin, line))
PersonInfo Info;
istringstream record(line);
record >> info.name;
while (record >> word)
info.numbers.push_back(word);
people.push_back(info);
【问题讨论】:
cplusplus.com/reference/sstream/stringstream 【参考方案1】:如何忽略标点符号?我的书只列出了上面这两个函数。
使用 std::getline,它接受一个分隔符参数:
if(! std::getline(record, line, ' ') ) // reads to first space
throw std::runtime_error "bad stream format" ;
您应该阅读一个分隔符,并将分隔符替换为“”或“;”。
【讨论】:
以上是关于字符串流函数的主要内容,如果未能解决你的问题,请参考以下文章