【问题标题】:Reading from a growing file c++ still has problems从不断增长的文件中读取 c++ 仍然有问题
【发布时间】:2015-08-12 22:52:59
【问题描述】:

我需要从 C++ 中不断增长的文件中读取,并找到此页面 - How to read a growing text file in C++?。我测试了@hmjd 发布的答案。出于测试目的,我编写了一个简单的 c++ 代码来读取一个大文件,然后每 0.3 秒将其写入文件,以便文件不断增长。同时,在生成增长文件的同时,我使用 hmjd 的代码来测试读取它。以 if(ifs.seekg(p)) 开头的第一个答案根本不起作用,以 'if(ifs.is_open())' 开头的第二个答案有效,但循环永远不会结束。

【问题讨论】:

  • 向我们展示您阅读文件的代码或放松一下,让我们用我们的精神力量进入您的大脑......
  • 您是查看该问题的答案,还是仅使用问题中的代码?
  • 我在您链接的问题的答案中添加了我的解决方案:stackoverflow.com/a/31977550/3807729
  • @Galik 非常感谢,这是一个更好的版本,带有 'seekg' 和 'tellg'。它的工作方式与 hmjd 提供的行为相同,在增长的文件停止增长后,您的代码会挂起。

标签: c++


【解决方案1】:

这可能过于简化了,但是您不能在文件增长后关闭您的文件句柄并重新打开一个新的文件描述符吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-27
    • 1970-01-01
    • 2012-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多