gpt4 book ai didi

c++ - 访问文件和打开文件有什么区别

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:35:21 38 4
gpt4 key购买 nike

我有这样的疑问:“打开文件和访问文件之间有什么区别?”

我正在使用 fanotify,我只对 FAN_ACCESS 事件感兴趣。我启动我的程序,当我尝试编辑一些文件时,该程序会执行它必须执行的操作。

也就是说,我写了一些测试,一些测试用例使用这样的代码:

filesystem::ofstream acces_to_file;
acces_to_file.open('/tmp/test_file.txt');
acces_to_file << "Some text" << endl;
acces_to_file.close();

但令人惊讶的是,我的程序没有检测到这种访问。我从 nano 访问相同的文件(即使没有重新启动上述程序)并且所有的都再次工作。

这就是为什么我认为访问和打开文件之间一定有一些区别。

该程序始终由 root 用户执行。

我将标志设置如下:

fanotify_mark(fd, FAN_MARK_ADD, FAN_ACCESS | FAN_EVENT_ON_CHILD, AT_FDCWD, MONITOR_ROOT_PATH);

最佳答案

一般来说,打开一个文件会告诉操作系统你想操作这个文件。

一般来说,文件访问就是您对文件的操作方式:只读、只写、读写。一些访问权限还包括顺序或随机。

关于c++ - 访问文件和打开文件有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20203712/

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