如何求时间差?

GWI2005 2010-05-14 11:58:31
目录中有多个文件,我想判断谁先生成,请教如何比较时间差?

用COleDateTime吗?

...全文
323 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
klkvc386 2010-05-16
  • 打赏
  • 举报
回复
Mark..............
softist 2010-05-16
  • 打赏
  • 举报
回复
用GetFileTime,FileTimeToLocalFileTime等从文件把SYSTEMTIME型的时间取出。
用SYSTEMTIME生成COleDateTime。
用COleDateTime的减法得到COleDateTimeSpan
用COleDateTimeSpan::GetTotalSeconds 算出两个文件的时间差,单位为秒。
宝批龙1892 2010-05-16
  • 打赏
  • 举报
回复
学习了
Practise_Think 2010-05-15
  • 打赏
  • 举报
回复
http://www.codepads.com/2010-04-03-09-32-37/40-vc--windows/565-2010-04-24-06-55-48.html
schlafenhamster 2010-05-15
  • 打赏
  • 举报
回复
DWORD dwStart = GetTickCount();
iResult=SafeUpload(4,0,&buf,&buflen,tmp);
DWORD dwEnd = GetTickCount();
Eleven 2010-05-15
  • 打赏
  • 举报
回复
GetFileAttributesEx()得到文件属性,然后得到文件的创建时间,进行比较。。。
hzy694358 2010-05-15
  • 打赏
  • 举报
回复
获取文件的创建时间为CTime
然后就可以比较了
尹成 2010-05-15
  • 打赏
  • 举报
回复
给你个函数,可以准确计算时间差

inline __int64 TimeDiff(SYSTEMTIME left,SYSTEMTIME right)

{

CTime tmLeft(left.wYear,left.wMonth,left.wDay,0,0,0);

CTime tmRight(left.wYear,left.wMonth,left.wDay,0,0,0);

CTimeSpan sp;

sp = tmLeft - tmRight;//计算日期比较麻烦,就交给MFC去做吧

long lLMinllis = (left.wHour*3600 + left.wMinute*60 + left.wSecond)*1000 + left.wMilliseconds;

long lRMinllis = (right.wHour*3600 + right.wMinute*60 + right.wSecond)*1000 + right.wMilliseconds;



return (__int64)sp.GetDays()*86400000 + (lLMinllis - lRMinllis);

}


wangli820 2010-05-15
  • 打赏
  • 举报
回复
用 CTimeSpan 或 直接比较两个 CTime 对象。
sichuanwww 2010-05-15
  • 打赏
  • 举报
回复
6楼可以试试。
liuharris 2010-05-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 liuharris 的回复:]
COleDateTime co;
t = COleDateTime(2010,5,4,16,0,0);
COleDateTimeSpan dt;
dt.SetDateTimeSpan(0, 0, 1, 0); //(日,时,分,秒)
co = t+ dt;
[/Quote]

比较时间差:
先从字符串中提取出年月日时分秒
t1 = COleDateTime(2010,5,14,12,30,0);//2010-05-14 12:30:00
t2 = COleDateTime(2010,5,14,12,30,10);//2010-05-14 12:30:10

if(t2>t1)
{
}
liuharris 2010-05-15
  • 打赏
  • 举报
回复
COleDateTime co;
t = COleDateTime(2010,5,4,16,0,0);
COleDateTimeSpan dt;
dt.SetDateTimeSpan(0, 0, 1, 0); //(日,时,分,秒)
co = t+ dt;

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧