文件最后一次修改时间变成了1970年?
系统的时间没有错的情况下,刚刚创建的文件的文件最后一次修改时间变成了1970年?我的程序大致是下面这样的。我后来在后面修改了st_mtime的时间看文件最后一次修改时间还是变成了1970!帮帮我谢谢!
if (stat(filename,&filestat)==-1)
{
if (errno== ENOENT)filestat.st_size = 0;//说明文件还不存在
else //不是“文件不存在"的错误则返回
{
fprintf(stderr,"stat %s fail:%s\n",filename,strerror(errno));
return -1;
}
}
if((filed = open(filename,O_CREAT|O_RDWR,S_IREAD|S_IWRITE|S_IRGRP|S_IWGRP|S_IROTH))<0)
{
fprintf(stderr,"open %s fail:%s\n",filename,strerror(errno));
return -1;
}
lseek (filed,0,SEEK_SET); //move the file-pointer to the fileheader
lseek(filed,0,SEEK_SET);
write (filed,&header,sizeof(List_Head));
lseek(filed,0,SEEK_END);
write (filed,var,structlen);
//修改修改时间
time_t tt;
time(&tt);
filestat.st_mtime=tt;
close (filed);