【问题标题】:VB 2010 Compare Stopwatch TimeVB 2010 比较秒表时间
【发布时间】:2023-03-13 18:48:02
【问题描述】:

我不想比较这两个秒表时间:

01:50:12.543

01:50:12.542

我该怎么做?

【问题讨论】:

  • 从两者创建 DateTime 对象并进行比较。
  • watch1.Elapsed.CompareTo(watch2.Elapsed) 怎么样?
  • 你能给我代码来创建它到 DateTime 并进行比较,因为我做不到吗?
  • 这是一个合法、明确的问题。它不应该被关闭。

标签: vb.net compare stopwatch


【解决方案1】:

你可以像这样得到区间:

Dim elapsed as TimeSpan
Dim watch1, watch2 as Stopwatch
...
elapsed = watch1.Elapsed.Subtract(watch2.Elapsed)

如果您转换为 DateTime 并进行比较,您只会得到最接近的秒数。您必须分别减去毫秒。

【讨论】:

    【解决方案2】:

    您可以使用TimeSpan 对象。首先,使用TimeSpan.Parse 转换您的字符串值。然后使用TimeSpan.Subtract 找出差异,最后使用TimeSpan.TotalMilliseconds 以毫秒为单位告知差异,在您的情况下答案将是“1.0”:

    Dim ts1 As TimeSpan = TimeSpan.Parse("01:50:12.543")
    Dim ts2 As TimeSpan = TimeSpan.Parse("01:50:12.542")
    Dim msDiff As Double = ts1.Subtract(ts2).TotalMilliseconds 'answer: 1.0
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      • 1970-01-01
      • 2011-08-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多