以逗号为分隔符对字符串进行分隔


源代码(可直接复制)

#include <iostream>
#include <vector>
#include <time.h>
#include <stdlib.h>
#include <sstream>      //内存string io流

using namespace std;


int main ()
{

  string ss="[email protected],王黎明,(单位地址)乌市公园北街 3 "
           "号皓翔文苑小区 1 号综合楼 7 层 ,165,2601,0991-5823066,347.30";


  stringstream sstr(ss);   //stringstream流类型,可以从string中读取数据 也可以向string中写入数据

  vector<string> stu;

  string token;


  while(getline(sstr, token, ','))    //getline函数进行字符串的提取
  {
      stu.push_back(token);
  }


  for(auto &i:stu)
      cout<<i<<endl;

  return 0;
}


/*
 *  getline函数讲解
 *
 * (1) istream& getline (istream& is, string& str, char delim);
 * (2) istream& getline (istream& is, string& str);
 *
 *  is: 一个输入流对象(stringstream类继承自iostream,所以可以使用)
 *  str:一个 string 对象,提取出的字符串会存放于此
 *  delim:该参数是需要分隔符,表示以‘d’为分隔符
 *
 * get如果找到分隔符,则将其提取并丢弃,即不存储分隔符,并且在其之后开始下一个输入操作。
 *
 *  如果getline没有读入字符,将返回false,可用于判断文件是否结束
 */

猜你喜欢

转载自blog.csdn.net/qq_29824717/article/details/81043982