私はC++にかなり慣れておらず、テキストファイルからの入力を取得するのに問題があります。
関連コード:
vector<string> nutrientName;
vector<float> nutrientAmount;
vector<string> nutrientUnits;
vector<float> nutrientCalories;
ifstream nutrientFile;
nutrientFile.open(nutrientFileName);
float newAmount = 0;
string newUnit;
float newCalories = 0;
while (!nutrientFile.eof())
{
int place = 0;
char nameArray [50];
while(c != ';')
{
if (c != '\n')
nameArray[place] = c;
c = nutrientFile.get();
place++;
}
string newName(nameArray, place);
nutrientName.push_back(newName);
nutrientFile >> newAmount;
nutrientAmount.push_back(newAmount);
nutrientFile >> newUnit;
nutrientUnits.push_back(newUnit);
nutrientFile >> newCalories;
nutrientCalories.push_back(newCalories);
}
nutrientFile.close();
入力は、成分のリストとそれらに関するいくつかの栄養成分が次のように設定されています。
Ingredient1(1+ワード); amountOfUnitsInServingSize(float)unitType(1 word)caloriesPerServing(float)Ingredient2(1+ words); amountOfUnitsInServingSize(float)unitType(1 word)caloriesPerServing(float)
。
。
。
私の問題は、ファイルから何かを取り込もうとすると、whileループのいずれかでスタックすることです(内側のループがコメント化されている場合)。デバッグコードをスローすると、ファイルから実際に入力を取得していないことが示されます。
前もって感謝します!