【问题标题】:How to obtain nanosecond file creation time in C++如何在 C++ 中获取纳秒文件创建时间
【发布时间】:2022-01-13 10:01:20
【问题描述】:

在软件开发过程中,遇到一个需求,需要获取文件创建时间、修改时间和访问时间的时间戳。通过调用struct stat相关接口很容易获取到这些信息,但要求是获取纳秒时间戳。所以我不知道该怎么办,有人给我解决方案吗?顺便说一句,我在Linux下使用C++编程。

【问题讨论】:

标签: c++ linux file timestamp


【解决方案1】:

并非所有文件系统都支持此功能(ext4 支持):

    struct stat result;
    if (stat(filename, &result) == 0) {
        printf("Last access of %s: %sns: %ld\n",
            filename,
            ctime(&result.st_ctim.tv_sec),
            result.st_ctim.tv_nsec
        );
    } else {
        fprintf(stderr, "%s: %s.\n", argv[0], strerror(errno));
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-14
    • 2016-07-04
    • 2012-11-21
    • 2019-02-04
    • 1970-01-01
    • 1970-01-01
    • 2011-01-24
    • 1970-01-01
    相关资源
    最近更新 更多