函数
BaseLib_TimeSpan_GetForStr
功能
通过字符串时间获取时间差
语法
BOOL BaseLib_TimeSpan_GetForStr(LPCSTR
lpszTimeStart, LPCSTR lpszTimeEnd, __int64x *pInt_Timer, int nType = 0, BOOL
bChange = FALSE)
参数
参数.一:lpszTimeStart
In/Out:In
类型:常量字符指针
可空:N
意思:开始时间
参数.二:lpszTimeEnd
In/Out:In
类型:常量字符指针
可空:N
意思:结束时间
参数.三:pInt_Time
In/Out:Out
类型:整数型指针
可空:N
意思:输出时间差值
参数.四:nType
In/Out:In
类型:整数型
可空:Y
意思:获取结果值类型,0:天数 1:小时 2:分钟
3:秒钟
参数.五:bChange
In/Out:In
类型:逻辑型
可空:Y
意思:是否支持交换计算,如果为真,那么将取最大的时间来减去最小时间,而不关心开始和结束
返回值
类型:逻辑型
意思:是否成功
备注
参数二只有天数,小时,分钟和秒才生效,其他值无效,下面的函数一样.
示例
void TimeSpanTest()
{
__int64x nDayTTime = 0;
__int64x nHourTTime = 0;
LPCTSTR lpszStartTime =
_T("2019-11-01
12:31:10");
LPCTSTR lpszEndTime =
_T("2020-10-02
12:31:10");
XENGINE_LIBTIMER
st_LibTimer;
memset(&st_LibTimer,
'\0',
sizeof(XENGINE_LIBTIMER));
BaseLib_OperatorTimeSpan_GetForStr(lpszStartTime,
lpszEndTime, &nDayTTime, 0);
BaseLib_OperatorTimeSpan_GetForStr(lpszStartTime,
lpszEndTime, &nHourTTime, 1);
printf(_T("\n跨了:%lld天 %lld小时\n"), nDayTTime,
nHourTTime);
BaseLib_OperatorTimeSpan_CalForStr(lpszStartTime,
lpszEndTime, &st_LibTimer, TRUE);
printf(_T("%d/%d/%d-%d:%d:%d\n"), st_LibTimer.wYear,
st_LibTimer.wMonth, st_LibTimer.wDay, st_LibTimer.wHour, st_LibTimer.wMinute,
st_LibTimer.wSecond);
BaseLib_OperatorTimeSpan_CalForStr(lpszStartTime,
lpszEndTime, &st_LibTimer, FALSE);
printf(_T("%d/%d/%d-%d:%d:%d\n"), st_LibTimer.wYear,
st_LibTimer.wMonth, st_LibTimer.wDay, st_LibTimer.wHour, st_LibTimer.wMinute,
st_LibTimer.wSecond);
}