7

如何获取 DateTime.UtcNow 每秒的滴答数并将其转换为字符串值?

坏问题:再试一次获得百万分之一秒

4

4 回答 4

22

一个特定的DateTime没有与之关联的“每秒滴答声”;滴答声是滴答声,无论DateTime它们在哪个位置。滴答声的长度为 100 纳秒,因此每秒有 10,000,000 个。

现在将其作为字符串获取就像字符串文字“10000000”一样简单......尽管通常您会获得一个数字并调用ToString()它。例如,您可以使用:

string ticksPerSecond = TimeSpan.TicksPerSecond.ToString();

你的问题有点奇怪,所以我想知道我们是否遗漏了一些东西......你能否用更多关于你想要做什么的细节来编辑这个问题。例如,您是否尝试确定特定秒内的滴答DateTime?这很容易做到:

long ticks = dt.Ticks % TimeSpan.TicksPerSecond;
于 2010-06-26T12:10:26.907 回答
2

您在 TimeSpan 上发现每秒的滴答数是一个常数:

TimeSpan.TicksPerSecond

不知道你想做什么虽然......

(DateTime.UtcNow.Ticks / TimeSpan.TicksPerSecond).ToString() // Total number of seconds...
于 2010-06-26T12:12:06.860 回答
1

我想你可能想要TimeSpan.TicksPerSecond

Console.WriteLine("tps = {0}", TimeSpan.TicksPerSecond.ToString());
于 2010-06-26T12:11:37.537 回答
1

DateTime 值中每秒的滴答数始终为 10000000。一个滴答为 100 纳秒。

因此,如果要将其转换为字符串:

10000000.ToString()
于 2010-06-26T12:13:48.400 回答