解析用逗号分隔的简单文本文件时遇到问题

时间:2015-03-17 05:31:08

标签: c++ parsing

我在解析我的文本文件时遇到问题,该文件与我的逗号分开。 istream和ifstream真的让我很困惑。

这是我的文本文件:

2,2,Robin Williams
3,2,Bud Abbott,Lou Costello
4,2
5,4,Groucho,Chico,Harpo,Gummo
6,3
7,2,W.C. Fields
9,5

这是我的代码

#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    ifstream inf("test.txt");
    while(!inf.eof())
    {
        string line;
        int roomNumber;
        inf >> roomNumber;
        getline(inf, line);
        cout << roomNumber << endl;
    }
}

我的最终目标是用逗号分隔每个字段并将它们存储在某个地方。前两个数字总是很有名,而名字可能是空的。现在我只是想存储第一个整数,roomNumber,并将它们打印出来,但我的输出看起来像这样:

2
3
4
5
6
7
9
9

为什么有两个9,有没有更好的方法呢?

它确实更具体和不同。

0 个答案:

没有答案