gpt4 book ai didi

c++ - 有没有办法只使用 C++ 找到最旧的文件

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:41:14 29 4
gpt4 key购买 nike

在 Linux 上。

我想建立一个文件缓冲区。每 30 分钟保存一个新文件。但允许的文件总数为“n”。

所以当创建第'n+1'个文件时,必须删除最旧的文件。

我发现诸如“dirent.h”和“struct stat”之类的东西可以帮助访问目录、列出所有文件并获取其属性。

struct stat 并没有给出创建时间,而只是 - 最后修改、最后访问、最后状态更改的时间 http://pubs.opengroup.org/onlinepubs/7908799/xsh/sysstat.h.html

请帮助。

P.S:boost 目前不可用。

最佳答案

在 Linux 上,文件系统元数据中没有文件创建时间这样的东西。有一些接近但不相同的东西:inode 修改时间(这是struct statst_ctime 成员)。来自 stat 手册页:

The field st_ctime is changed by writing or by setting inode information (i.e., owner, group group,link count, mode, etc.).

只要您不修改这些属性并且您不写入(超过零字节)到文件 - st_ctime 是您的“文件创建时间”。

关于c++ - 有没有办法只使用 C++ 找到最旧的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9642145/

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