C++ 使用getline()从文件中读取多行
我试图读入并输出一个文本文件的三行内容,如下所示: 鲍勃·迪伦10 9 约翰·列侬8 7 大卫·鲍伊6 5 对于每一行,我只想输出该行,即firstName LastName number1 number2 我正在为此使用以下代码:C++ 使用getline()从文件中读取多行,c++,file-io,getline,C++,File Io,Getline,我试图读入并输出一个文本文件的三行内容,如下所示: 鲍勃·迪伦10 9 约翰·列侬8 7 大卫·鲍伊6 5 对于每一行,我只想输出该行,即firstName LastName number1 number2 我正在为此使用以下代码: int num1; int num2; string firstName; string lastName; string fullName; ifstream inFile; inFile.open("inputFile.txt"); while (getl
int num1;
int num2;
string firstName;
string lastName;
string fullName;
ifstream inFile;
inFile.open("inputFile.txt");
while (getline(inFile, firstName))
{
inFile >> firstName >> lastName >> num1 >> num2;
fullName = firstName + " " + lastName;
cout << fullName << " " << num1 << " " << num2 << endl;
}
inFile.close();
intnum1;
int num2;
字符串名;
字符串lastName;
字符串全名;
河流充填;
open(“inputFile.txt”);
while(getline(infle,firstName))
{
填充>>名字>>名字>>名字>>数字1>>数字2;
fullName=firstName+“”+lastName;
你试图把每一行读两遍
while (getline(inFile, firstName)) // reads the line
{
// reads the next line and overwrites firstName!
inFile >> firstName >> lastName >> num1 >> num2;
将其更改为:
while ( inFile >> firstName >> lastName >> num1 >> num2 )
{
fullName = firstName + " " + lastName;
cout << fullName << " " << num1 << " " << num2 << endl;
}
while(infle>>firstName>>lastName>>num1>>num2)
{
fullName=firstName+“”+lastName;
你不能在第一次提取到firstName
之后立即抛出你的getline()
结果。你可以从那里开始。关于getline()的示例
,。正如您在这里所建议的,完全放弃getline实际上是很有意义的,因为我开始使用它的唯一原因是读取firstName和lastName之间的空格,但我最终还是将两者连接起来了!但我不知道提取可以用作while循环的条件。感谢有用的insight和suggestion!@Abhishek Bansal-为什么我在链接的getline
引用中找不到“它返回一个布尔值…”语句?