我有一些包含 nba 球队和他们的首发球员的文件,我需要将这些信息添加到我的程序中,然后用它们执行一些任务。
我目前无法解析文件。
文件看起来像这样:
队名,控球后卫,得分后卫,小前锋,大前锋,中锋
例如:
芝加哥公牛队、德里克·罗斯、凯尔·科沃尔、洛尔·邓、卡洛斯·布泽尔、乔金·诺阿
丹佛掘金队、..等
我只想添加球队、控球后卫和小前锋的名字,但我不确定该怎么做。
到目前为止我有什么:
17 ifstream* myIN = new ifstream();
18 myIN->open(filename.c_str());
19
20 string teamName;
21
22 *myIN >> teamName;
23
24 while(!myIN->eof()){
25 TEAM.push_back(teamName);
26 //TODO
27 }
我正在研究使用“find()”来查找每个逗号,但我不知道如何只记录第一个逗号前后以及第三个逗号之后的信息。
任何形式的指导将不胜感激。
最佳答案
这是使用 tokenizing
进行解析的非常常见(对您来说幸运的是,很简单)的情况。
这里,你需要的不同字段用同一个字符分隔:,
请看这个stackoverflow question about tokenizing in C++获取更多信息。
此外,不要忘记删除标记化元素上不必要的空格(第一个除外)
关于c++ - 如何将文件中的团队信息解析并存储到类中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18797128/