在C++中显示指定文本文件的内容

在C++中显示指定文本文件的内容,c++,input,output,C++,Input,Output,我试图让这个程序要求用户输入一个文本文件的名称,并让它显示文本文件中的结果。当我运行这个程序时,它在某种程度上是成功的,因为它可以识别文本文件,但它会输出奇怪的结果。例如,我试图让它输出某个文件的内容,该文件包含: 10 5 70 5 15 85 12 9 75 10 6 60 20 10 100 15 8 95 4 3 35 20 10 200 9 5 65 但它只输出: 0 0 0 已到达文件结尾 我真的很喜欢C++,但是我一

我试图让这个程序要求用户输入一个文本文件的名称,并让它显示文本文件中的结果。当我运行这个程序时,它在某种程度上是成功的,因为它可以识别文本文件,但它会输出奇怪的结果。例如,我试图让它输出某个文件的内容,该文件包含:

10 5 70    
5 15 85    
12 9 75    
10 6 60    
20 10 100    
15 8 95    
4 3 35    
20 10 200    
9 5 65
但它只输出:

0 0 0

已到达文件结尾

我真的很喜欢C++,但是我一直在想为什么我的程序不工作,这只是最终程序的一小部分。谢谢大家!

#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
using namespace std;


int main()
{
    int  count, firstMinute, secondMinute, numOfDishes;
    string inputFileName;
    ifstream inputFile;

    cout << "Input file name: ";
    getline(cin, inputFileName);

    //Open input file
    inputFile.open(inputFileName);

    //check if messed up

    if (!inputFile.is_open())
    {
        cout << "Unable to open file." << endl;
        exit(1);
    }

    while (inputFile >> firstMinute >> secondMinute >> numOfDishes) 
    { 

        cout << firstMinute << ' ' << secondMinute << ' ' << numOfDishes << 
' ' << '\n';

    }

    cout << "End of file reached" << endl;

    inputFile.clear();
    inputFile.seekg(0);

    inputFile.close();
    return 0;
}
首先,尽管!inputFile.eof不是一个好主意。更多关于这个

而且,您根本没有更改firstMinute、secondMinute和NumofDisks的值。你忘了在循环中做那件事了吗

我会简单地使用extraction操作符,而不是像这样使用getline:

while(inputFile >> firstMinute >> secondMinute >> numOfDishes) //not checking for eof
{
    cout << firstMinute << ' ' << secondMinute << ' ' << numOfDishes << '\n';
}

推荐阅读:你在哪里设置第一分钟第二分钟和第二分钟?就一次?你处理getcontent的例行程序在哪里?我用你的替换了我的while循环,但我现在出来了,仍然是0。好的,我将用新代码编辑我的原始问题