【问题标题】:C++ Main file does not display everythingC++ 主文件不显示所有内容
【发布时间】:2013-10-09 01:46:21
【问题描述】:

我的程序读取一个 *.txt 文件并从文件中向后打印一行。 我想在它这样做之前得到行号。 完成循环后,我得到了我的号码,但我的“for循环”之后的所有内容都没有打印/工作。我的代码有什么问题?

    if (testFile.good()) {

        int countLines = 0;
        string temp;

        for (int i = 0; getline(testFile, temp); i++)
                    countLines++;

        cout << countLines;

        aline.readLine(testFile);
}

【问题讨论】:

    标签: c++ loops for-loop printing main


    【解决方案1】:

    当您反复调用getline(testFile, temp) 直到到达文件末尾时,

    那么你就不能阅读更多了。

    你需要rewind它到文件的开头。

    【讨论】:

    • 使用testFile.seekg(0, testFile.beg);
    【解决方案2】:

    重置流标志,以便在for 循环之后,您可以在aline.readLine(testFile); 中再次“做一些事情”

    testFile.clear();
    testFile.seekg(0, testFile.beg);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-26
      相关资源
      最近更新 更多