2011-12-14 192 views
0

我收到一个UNIX时间戳在我的WP7应用程序,我想将其转换为毫秒..接收UNIX时间戳和转换时间,以毫秒WP7

我有这样的:

time.Ticks/10000; 

这是正确的吗?这给总时间以毫秒还是仅以毫秒为单位?

我想以毫秒为单位的总时间...

我的方法来获取时间是这样的:

void _ntpClient_TimeReceived(object sender, NtpClient.TimeReceivedEventArgs e) 
    { 
     this.Dispatcher.BeginInvoke(() => 
     { 

      DateTime time = e.CurrentTime; 

      long miliseconds = time.Ticks/10000; 
     }); 
    } 
+0

什么是'时间'?如果你已经收到了一个Unix时间戳,大概你在Unix时代以来有一个整数?目前还不清楚你有什么输入和你想要的输出。 – 2011-12-14 21:58:32

回答

1

Unix的一般存储时间,要么秒,或者同时包含秒和微秒的struct timespec为进一步精确。当提及日期时,它是1970年1月1日以来经过的秒数(或秒和微秒)。

然而,这些都是从来没有被称为“滴答声”。 “蜱”通常指Windows/.NET样式的时间单位 - “嘀嗒”等于100纳秒。在提及日期时,它是自0001年1月1日以来经过的数百纳秒单位。

如果您有一个带有“嘀嗒”的对象,那么是的,简单地除以10000就会将单位转换为毫秒。或者,您可以使用TimeSpan

TimeSpan ts = new TimeSpan(ticks); 
millis = ts.TotalMilliseconds;