//这是一个使用utime函数对文件的时间参数进行修改的实例
//文件首先使用stat函数获得文件当前的时间参数,然后使用
//Open函数对文件进行修改,再用utime函数对文件的时间信息
//进行修改.文件名由argv参数给出
#include <stdio.h>
#include <fcntl.h>
#include <utime.h>
int main(int argc, char *argv[])
{
int i, fd;
struct stat statbuf; //文件信息缓冲区
struct utimbuf timebuf; //文件时间信息缓冲区
for (i=1;i<argc;i++) //支持同时对多个文件进行操作
{
if(stat(argv[i], &statbuf) < 0) //获得文件当前信息失败
{
printf("获取文件信息失败\n"); //输出提示并且进行到下一个文件
continue;
}
if((fd = open(argv[i], O_RDWR|O_TRUNC)) < 0) //尝试打开并且截断文件
{
printf("打开截断文件操作失败\n"); //文件打开失败
continue;
}
close(fd); //关闭文件
timebuf.actime = statbuf.st_atime;
timebuf.modtime = statbuf.st_mtime; //恢复时间
if (utime(argv[i], &timebuf) < 0) //复位时间失败
{
printf("时间操作失败\n"); //复位时间失败
continue;
}
}
return 0;
}
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。