使用分隔符和多个空格读取txt

时间:2016-05-17 16:14:02

标签: c++ ifstream

我有一个文本文件,其中分隔符是'&'。但是,第一列是文本,也可能包含空格 - 如何正确阅读?文字看起来像

selection according to criteria A & 2312

根据标准B& 345

请注意,第一列中的文字可以包含多个单词(即从一行到另一行的空格更多)。我尝试了一些东西

char ch;
ch="&";
   ifstream filein;
   filein.open("selection.txt");
   while (1) {
      data >> c1 >> char >>c2 ;

        cut1.push_back(c1);
        cut2.push_back(c2);

      if (!data.good()) break;

}

但这不起作用......

提前致谢

1 个答案:

答案 0 :(得分:1)

使用std::getline阅读整行。然后使用字符串findsubstr函数将行拆分为两个子字符串。

如果您有多个字段,请在循环中进行拆分,直到找不到分隔符为止。