У меня есть файл, который выглядит так:
1.23 2.34 4.4 6.5 3.4
3.43 5.34 5.44 4.5 1.4
.... and so on
Так что есть много линий, которые разделены пробелом. На самом деле я читаю их с:
double values[5];
while (infile >> values[0] >> values[1] >> values[2] >> values[3] >> values4]) {
for (int j = 0; j < 5; j++) {
coordinates.at(x).values.push_back(values[j]);
}
x++;
}
И я хотел бы иметь возможность изменить количество значений в файле, например, с 5 до 20. Есть ли быстрый способ сделать это? Все, что я нашел, это чтение всей строки в виде строки, затем создание потока и использование множества функций для получения этих значений. Я знаю, что мое решение также неверно, потому что сначала я сохраняю их в таблице, а затем помещаю в вектор.
ОБНОВИТЬ:
Ответ на этот вопрос был неправильным, но я разобрался сам:
string line;
while (getline(file, line)) {
stringstream ss(line);
double val;
while (ss >> val) {
//do something
}
x++;
}