C++计算当前时间点间隔N天的时间(不使用CTimeSpan类)
2017-03-10 16:31
597 查看
涉及到有效期的设置,需要计算N天时间间隔的时间。其实这只是个工具代码,记录下与己方便,便是与人方便。。
上面代码就只计算天数间隔,若要类似CTimeSpan( LONG lDays, int nHours, int nMins, int nSecs )计算到时分秒,则传参需要采用类似CTimeSpan类的方式构造个
CArTimeSpan( LONG lDays, int nHours, int nMins, int nSecs );用成员变量存储对应的天时分秒
#define QUADPART 10000000i64 std::string CalTime(int v_nTimeSpan) { char chTime[MAX_PATH] = {0}; SYSTEMTIME Curtime; SYSTEMTIME OutTime; GetLocalTime(&Curtime); LONGLONG iTimeSpan = v_nTimeSpan*QUADPART*86400; LARGE_INTEGER fTime; SystemTimeToFileTime(&Curtime, (FILETIME *)&fTime); fTime.QuadPart -= iTimeSpan; FileTimeToSystemTime((FILETIME *)&fTime, &OutTime); sprintf(chTime, "%4d%02d%02d", OutTime.wYear, OutTime.wMonth, OutTime.wDay); return chTime; }
上面代码就只计算天数间隔,若要类似CTimeSpan( LONG lDays, int nHours, int nMins, int nSecs )计算到时分秒,则传参需要采用类似CTimeSpan类的方式构造个
CArTimeSpan( LONG lDays, int nHours, int nMins, int nSecs );用成员变量存储对应的天时分秒
LONGLONG iTimeSpan = v_ArTimeSpan.m_iDays * QUADPART * 86400 + v_ArTimeSpan.m_iHours * QUADPART * 3600 + v_ArTimeSpan.m_iMins * QUADPART * 60 + v_ArTimeSpan.m_iSecs * QUADPART;采用此计算即可
相关文章推荐
- Windows中如何计算时间间隔(1)使用CTime 和CTimeSpan
- Windows中如何计算时间间隔(1)使用CTime 和CTimeSpan
- SPCAMLEditor使用系列(3)--利用SPCamlEditor实现 时间字段跟当前时间进行实时比较计算
- 使用 DurationFormatUtils 计算时间间隔
- python-----读取Pickle文件信息计算出与当前的时间间隔
- flex中取得当前时间日期,计算时间间隔
- C++获取当前时间和计算程序运行时间的方法
- 使用 DurationFormatUtils 计算时间间隔
- C++获取当前时间和计算程序运行时间的方法
- JAVA/C/C++获取当前系统毫秒时间+计算程序运行时间
- 使用 performance-counter 计算时间间隔
- PHP uniqid()函数可用于生成不重复的唯一标识符,该函数基于微秒级当前时间戳。在高并发或者间隔时长极短(如循环代码)的情况下,会出现大量重复数据。即使使用了第二个参数,也会重复,最好的方案是结
- 使用 DurationFormatUtils 计算时间间隔
- Windows中如何计算时间间隔(2)使用SYSTEMTIME和FILETIME
- C++获取当前时间和计算程序运行时间的方法
- C++使用API获取当前时间
- c++计算两个时间之间的时间间隔
- C/C++日期时间使用方法,struct tm, time_t, clock_t,计算循环所用时间
- 使用 DurationFormatUtils 计算时间间隔
- python使用datetime模块计算各种时间间隔的方法