如果文件已更新/更改,如何在 c 和 linux 中检查。
我想在打开文件并从中执行提取/输入/输出操作之前检查文件是否有更新。
最佳答案
查看man page对于 stat(2)
。获取struct stat
结构的st_mtime
成员,它会告诉你文件的修改时间。如果当前 mtime 晚于之前的 mtime,则文件已被修改。
一个例子:
int file_is_modified(const char *path, time_t oldMTime) {
struct stat file_stat;
int err = stat(path, &file_stat);
if (err != 0) {
perror(" [file_is_modified] stat");
exit(errno);
}
return file_stat.st_mtime > oldMTime;
}
这是 an introduction to inotify
,如果这就是您要查找的内容。
关于c linux 检查文件是否更新/更改/修改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9376975/