逐行读取文件,并通过特定分隔符对行进行标记并存储每个标记

时间:2017-12-29 11:32:26

标签: c++

我有一个包含2行的文件,该对中的第一行有4个用逗号分隔的数字,而该对中的第二行有3个数字也用逗号分隔。 我需要将这些数字存储在数组中(而不是向量),以便稍后使用它们。

示例:

输入文件

0.994, 0.0, 0.0, -2.00158510638
17.0652165602, 1000, 1000

输出

arr[0] = 0.994
arr[1] = 0.0
arr[2] = 0.0
arr[3] = -2.00158510638
arr[4] = 17.0652165602
arr[5] = 1000
arr[6] = 1000

我尝试执行以下操作:

std::string arr[7];
std::fstream inFile(file);
std::string part;
int counter = 0;
while(!inFile.eof())
{   
    getline(inFile, part, ' ');
    part.erase(std::remove(part.begin(), part.end(), ','), part.end());
    arr[counter] = part;
    counter++;
}
inFile.close();

但由于某种原因,数组中的最后一个元素总是为零。可能是什么问题?

0 个答案:

没有答案