文件输入/输出和读取行

时间:2014-04-24 02:09:49

标签: c++

所以基本上我的代码要我做的就是从文件中读入一行

  

电影名称MPAA等级评定1评级2评级3评级4评级5

我有这行代码

file1 >> movieName >> mpaa >> rating1 >> rating2 >> rating3 >> rating4 >> rating5;

示例输入(来自文件中的第一行):

  

冷冻PG13 1 2 3 4 5

完美无缺。

但是如果我要加入类似的东西:

  

Peter Pan PG 1 2 3 4 5

我会得到一个错误,因为它会尝试将Pan放入mpaa,等级1将是PG等等。 如何让代码识别空间?

1 个答案:

答案 0 :(得分:0)

将分隔符更改为逗号等其他内容,然后尝试以下操作:

getline(file1, moveName, ',');
getline(file1, mpaa, ',');
// etc

如果您需要逐行阅读并确保每一行都正确,您可能需要先阅读getline(file1, line)行,然后使用该字符串初始化istringstream以提取逗号分隔的值来自。