我正在尝试将时间戳打印到字符串,其中:
每个时间戳都基于1970.1.1并且增加了一个(长)秒数和一个(长)微秒量(总是小于1秒)。
这就是我正在做的事情:
DateTime TimeStamp = new DateTime(1970, 1, 1);
TimeSpan span = new TimeSpan(0, 0, 0, (int)Soc, (int)Fracsec.Fracsec);
TimeStamp += span;
我刚刚注意到DateTime和TimeSpan使用的是毫秒而不是微秒,我必须使用微秒,有人能告诉我如何实现吗?
接下来我要做的是在一次操作中显示结果(希望如此)。有没有办法呢?
答案 0 :(得分:1)
使用Ticks
属性实现微秒保真度,使用DateTime.Format()
显示它。有关详细信息,请参阅this question。 10 Ticks
等于1微秒。
还有一个StopWatch class可以更准确地测量经过的时间。
答案 1 :(得分:1)
DateTime比毫秒更精确 - 查看DateTime.Ticks
和TimeSpan.Ticks
属性。刻度表示100纳秒(即每微秒有10个刻度;每毫秒10,000个。)这在TimeSpan.TicksPerMillisecond
(常量)中定义。
(有一点需要注意的是,这种刻度不与Stopwatch
类中的刻度相同,后者因计时器而异。)