これが起こる理由はありますか?まったく同じファイルを 2 つの異なる名前で保存しています。1 つは test.csv で、もう 1 つは text.txt です。内容は同一です。ifstream オブジェクトを使用して text.txt を開くと、コードが期待どおりに実行され、データがオブジェクトに解析されます。test.csv を開くと、ifstream オブジェクトによってデータが収集されず、コードが誤動作します。.txt ではなく .csv を開くときに実行する必要がある追加の手順はありますか?
実際に入力を行うコードは次のとおりです。
Team::Team(ifstream& fin)
{
string temp;
stringstream convert;
//Get team #
getline(fin, temp, ',');
idNumber = stringToInt(temp);
//Get team letter
getline(fin, temp, ',');
idLetter = temp[0];
//Get team name
getline(fin, name, ',');
//Get team type
getline(fin, type, ',');
//Get team rating
getline(fin, temp, ',');
rating = stringToDouble(temp);
//Get team notes
getline(fin, notes, ',');
//Get toss info
getline(fin, temp, ',');
canToss = stringToBool(temp);
getline(fin, tossType, ',');
//Get female info
getline(fin, temp, ',');
hasFemales = stringToBool(temp);
getline(fin, temp, ',');
femaleNumber = stringToInt(temp);
getline(fin, temp, ',');
femaleRating = stringToDouble(temp);
//Get Auto info
getline(fin, temp, ',');
hasAuto = stringToBool(temp);
getline(fin, autoType, ',');
getline(fin, temp, ',');
autoScore = stringToInt(temp);
//Get Drive Info
getline(fin, temp, ',');
driveMotors = stringToInt(temp);
getline(fin, temp, ',');
driveRatio = stringToDouble(temp);
getline(fin, driveType, ',');
//Get hang info
getline(fin, temp, ',');
canHang = stringToBool(temp);
getline(fin, hangType, ',');
//Get stash info
getline(fin, temp, ',');
canStash = stringToBool(temp);
//Get lift indo
getline(fin, temp, ',');
liftMotors = stringToInt(temp);
getline(fin, temp, ',');
liftRatio = stringToDouble(temp);
getline(fin, liftType, ',');
//Get competition info
getline(fin, temp, ',');
driverSkills = stringToInt(temp);
getline(fin, temp, ',');
programmingSkills = stringToInt(temp);
getline(fin, temp, ',');
ranking = stringToInt(temp);
getline(fin, temp, ',');
wins = stringToInt(temp);
getline(fin, temp, ',');
ties = stringToInt(temp);
getline(fin, temp, ',');
losses = stringToInt(temp);
getline(fin, temp);
SPs = stringToInt(temp);
}