读取文件的特定行

时间:2016-02-23 21:16:47

标签: c++ file getline

在下面的代码中,我逐行循环读取文件。我希望当在while循环中调用 func 时,应该从上一次在while循环中结束的下一行读取该文件。我已经看到了一个解决方案,其中设置了一个计数器来计算循环内的行,但是有没有其他有效的方法从特定行读取文件。

    void func(){

    int counter=0;
    ifstream file("file");
    string str;

    while (std::getline(file, str))
    {

    //some code

    func();
    }
}

1 个答案:

答案 0 :(得分:0)

您可以编写代码来记住文件中的偏移量,然后前进到该位置,但这可能是一个糟糕的解决方案。相反,在函数外部打开文件并将流传递给函数(通过引用或指针)。