Использование ifstream :: operator & gt; & gt; загрузить массив из файла CSV

Я знаю, что есть несколько C ++ способов загрузки значений из CSV, но мне любопытно, как я могу адаптировать этот неправильный подход с минимальными изменениями, необходимыми для его работы:

std::ifstream fileStream ("File.txt");    // File.txt reads "1,2,3"short numbers[3];

for (short i = 0; i < 3; ++i)
fileStream >> numbers[i];

Есть ли способ, которым я могу сделать это, используя ifstream :: operator >>, сохраняя при этом максимально возможную концептуальную близость к этой реализации? Исправьте этот код! 🙂

Спасибо! Хотите верьте, хотите нет, но это будет очень полезно в проекте по вычислительной нейтринной физике, над которым я работаю.

2

Решение

Как быстрое исправление, чтение запятой во временную переменную позволит вам получить данные из файла.

std::ifstream fileStream ("File.txt");
short numbers[3];
char delim;

fileStream >> numbers[0];
for (int i = 1; i < 3; ++i){
fileStream >> delim;
fileStream >> numbers[i];
}
3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]