gpt4 book ai didi

c++ - 使用没有无限循环的 C++ i 检测文本文件中的更改?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:04:43 26 4
gpt4 key购买 nike

我正在使用 C++ 读取文本文件。我使用第一行来指示文件是否已更改。例如,文本文件将如下所示:

  0
9

更改文本文件后,我将翻转第一行。因此,新的文本文件将如下所示:

  1
5

C++ 代码将在从文本文件中读取新输入后执行其功能。目前,我正在使用无限循环来检测文本文件中的更改。是否有任何替代实现来使用 C++ 检测文本文件中的更改?到目前为止,这是我的解决方案:

   do{
std::ifstream reader;
reader.open(READFILE);
if (!reader){
printf("Error opening the reader file!!");
exit(1);
}
reader >> status >> variable;

if(status != reader_file_status){
reader_file_status = status;
return true
}
} while(true);

最佳答案

文件系统更改事件是特定于平台的,因此您需要针对不同平台的不同解决方案。

  • osx:文件系统事件 API doc
  • freebsd/osx: kqueue doc
  • linux: inotify doc
  • window : window API doc

似乎有一些跨平台包装器。快速谷歌搜索显示:

关于c++ - 使用没有无限循环的 C++ i 检测文本文件中的更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48598037/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com