在vb.net中取得两时间的毫秒差

时间:2022-09-14 13:56:31

最近在做一个项目,其中有个测试老方法的性能,最简单的测试方法就是测试此方法的总运行时间,这个方法的代码行有1200行(包括End if之类的),

在方法dim之前就定义一个时间参数

dim dtStartTime as datetime = now     ’2010-08-09 14:35:25.421

在方法最后面定义一个时间参数

dim dtEndTime as datetime = now      ’2010-08-09 14:35:27.681

 ’时间差intDiff

 最开始以前做的时间差都是用

DateDiff方法,一查这个是时间差只精确到秒。

dateDiff(DateInterval.seconds,dtStartTime ,dtEndTime)DateInterval.seconds:精确到秒

以下是DateInterval自带的方法

DateInterval.Day

"d"

DateInterval.DayOfYear

"y"

DateInterval.Hour

"h"

DateInterval.Minute

"n"

DateInterval.Month

"m"

月份

DateInterval.Quarter

"q"

DateInterval.Second

"s"

DateInterval.Weekday

"w"

DateInterval.WeekOfYear

"ww"

行事曆週

DateInterval.Year

"yyyy"

 我要精确到毫秒,而且包含全部的时间差,经过多次测试得到最终的方法:

1。dim a1 as timespan = dtEndTime -dtStartTime

     dim a2 as integer = a2.TotalMilliseconds '精确到毫秒数

2。我从其他网站看到的一个方法是:

     Format(Date.FromOADate(dtEndTime .Subtract(dtStartTime ).TotalMilliseconds).ToOADate, "0.00 ")

 后面一个我有点不能理解,但通过多次测试和第一个得到的数据是一样的。

最后选择第一个方法,比较简洁直观