1. 程式人生 > >【C程式】獲取檔案最後一次修改時間

【C程式】獲取檔案最後一次修改時間

獲取檔案的最後一次修改時間,用於判斷可能的使用場景:

1、檔案是否被修改了

2、新的內容是否寫入檔案了

3、對比時間來找到最後被修改的檔案等等...


#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int get_old_file_time(void)
{
    FILE * fp;
    int fd;
    struct stat buf;
    fp=fopen("yuan_jiang.txt","r");
    if(NULL != fp)
    {
        fd=fileno(fp);
        fstat(fd, &buf);
        int size = buf.st_size; //get file size (byte)
        long modify_time=buf.st_mtime; //latest modification time (seconds passed from 01/01/00:00:00 1970 UTC)
        printf("size = %d\n",size);
        printf("modify_time = %ld\n",modify_time);
        fclose(fp);
        return modify_time;
    }
    printf("function error\n");
    return 0;
}
int main (void)
{
    system("touch yuan_jiang.txt");
    get_old_file_time();
    printf ("test over.\n");
    return 0;
}