当我想要读取字符串时,我在从具有空格的外部文件中读取时遇到问题。
这是外部文件格式:
5
SD Mines
77 40
Northern State
80 64
BYU
77 65
Creighton
81 88
Sam Houston State
60 49
这是我正在阅读文件的代码:
for (int i = 0; i < arraySize; i++)
{
inputFile >> b[i].visitTeam >> b[i].homeScore >> b[i].visitScore;
}
答案 0 :(得分:0)
std::istream::oprator>>()
函数在遇到空格时会停止阅读。您可以使用std::getline()
来读取整行。
for (int i = 0; i < arraySize; i++)
{
std::getline(inputFIle, b[i].visitTeam);
inputFile >> b[i].homeScore >> b[i].visitScore;
// Now, make sure you skip everything in the line.
// Otherwise, the next call to getline() will return an
// empty string.
inputFile.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
}