我想要一个函数,它将占用一个文件并持续多少天,如果它早于该日期,则将返回0,否则返回1 ...类似的东西...

例如:

int IsOlder(TCHAR *filename, int days)
{

do operation.

If last modify date was older than days variable
return 0
else
return 1

}

它是Windows的MS VC++ 6。
从现在开始谢谢!

最佳答案

Windows具有一个称为GetFileTime()(doc on MSDN)的API函数,该函数使用参数中的文件句柄和3个FILETIME结构来填充日期时间信息:

FILETIME creationTime,
         lpLastAccessTime,
         lastWriteTime;
bool err = GetFileTime( h, &creationTime, &lpLastAccessTime, &lastWriteTime );
if( !err ) error
FILETIME结构被混淆,请使用FileTimeToSystemTime()函数将其转换为SYSTEMTIME结构,该结构更易于使用:
SYSTEMTIME systemTime;
bool res = FileTimeToSystemTime( &creationTime, &systemTime );
if( !res ) error

然后,您可以使用wYearwMonth等字段与您的天数进行比较。

10-07 22:49