ifstream-监视文件更新

时间:2018-07-24 15:39:05

标签: c++ windows file ifstream

我正在使用ifstream打开文件并逐行读取并打印到控制台。 现在,我还想确保如果文件得到更新,则可以反映出来。我的代码应该可以解决这个问题。

我尝试将fseek设置为文件末尾,然后使用peek查找新条目。但是,那没有用。

这是我使用的一些代码

bool ifRead = true;
while (1)
{
    if (ifRead)
    {
        if (!file2read.eof())
        {
            //valid file. not end of file.
            while (getline(file2read, line))
                printf("Line: %s \n", line.c_str());
        }
        else
        {
            file2read.seekg(0, file2read.end);
            ifRead = false;
        }
    }
    else
    {
        //I thought this would check if new content is added. 
        //in which case, "peek" will return a non-EOF value. else it will always be EOF.
        if (file2read.peek() != EOF)
            ifRead = true;

    }
}
}

关于可能出问题或如何解决的任何建议。

0 个答案:

没有答案