asp下用datediff实现计算两个时间差的函数

时间:2022-02-14 00:26:26

计算两个时间差的函数

  1. '******************************  
  2. '||Function TimeDiff(sBegin, sEnd)  
  3. '||本函数计算两个时间的差,可以不用更改直接使用  
  4. '||作者:machinecat 2001/10/26  
  5. '******************************  
  6.  
  7. '******************************  
  8. '注:首先需要判断用户输入的sBegin与sEnd之间的大小  
  9. '可以通过DataDiff函数获得两者之间的时间差,不需要进行复杂的时间换算  
  10. '******************************  
  11.  
  12. Function TimeDiff(sBegin, sEnd)  
  13. Dim iHourB, iMinuteB, iSecondB, iMiniSecondB  
  14. Dim iHourE, iMinuteE, iSecondE, iMiniSecondE  
  15. Dim dTimeB, dTimeE, dTimeDiff  
  16. Dim iHour, iMinute, iSecond, iMiniSecond  
  17.  
  18. iHourB = clng(Left(sBegin, 2))  
  19. iMinuteB = clng(Mid(sBegin, 4, 2))  
  20. iSecondB = clng(Mid(sBegin, 7, 2))  
  21. iMiniSecondB = clng(Mid(sBegin, 10, 4))  
  22.  
  23. iHourE = clng(Left(sEnd, 2))  
  24. iMinuteE = clng(Mid(sEnd, 4, 2))  
  25. iSecondE = clng(Mid(sEnd, 7, 2))  
  26. iMiniSecondE = clng(Mid(sEnd, 10, 4))  
  27.  
  28. dTimeB = iHourB * 3600 + iMinuteB * 60 + iSecondB + iMiniSecondB / 1000  
  29. dTimeE = iHourE * 3600 + iMinuteE * 60 + iSecondE + iMiniSecondE / 1000  
  30. dTimeDiff = dTimeE - dTimeB  
  31.  
  32. iHour = Int(dTimeDiff / 3600)  
  33. dTimeDiff = dTimeDiff - iHour * 3600  
  34. iMinute = Int(dTimeDiff / 60)  
  35. dTimeDiff = dTimeDiff - iMinute * 60  
  36. iSecond = Int(dTimeDiff)  
  37. dTimeDiff = dTimeDiff - Int(dTimeDiff)  
  38. iMiniSecond = dTimeDiff  
  39.  
  40. TimeDiff = iHour & "小时" & iMinute & "分钟" & iSecond & FormatNumber(iMiniSecond, 3) & "秒"  
  41. End Function