我想要一个函数,它将占用一个文件并持续多少天,如果它早于该日期,则将返回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
然后,您可以使用
wYear
,wMonth
等字段与您的天数进行比较。