Получить тиков в секунду и преобразовать в строковое значение? - PullRequest
6 голосов
/ 26 июня 2010

Как получить число тиков в секунду DateTime.UtcNow и преобразовать его в строковое значение?

Плохой вопрос: попробуйте еще раз Получите десять миллионных долей секунды

Ответы [ 4 ]

19 голосов
/ 26 июня 2010

Конкретное значение из DateTime не имеет ассоциированного с ним числа тактов в секунду;тики - это тики, независимо от того, в каком DateTime они находятся. Тики имеют длину 100 наносекунд, поэтому их число составляет 10000000 в секунду.10000000 "... хотя в целом вы получите номер и просто наберете ToString().Например, вы можете использовать:

string ticksPerSecond = TimeSpan.TicksPerSecond.ToString();

Ваш вопрос немного странный, поэтому мне интересно, не упустили ли мы что-то ... могли бы вы отредактировать вопрос с более подробной информацией о том, что вы пытаетесьсделать.Например, вы пытаетесь определить количество тиков в пределах определенной секунды определенного DateTime?Это проще всего сделать так:

long ticks = dt.Ticks % TimeSpan.TicksPerSecond;
1 голос
/ 26 июня 2010

Тики в секунду вы найдете как постоянные на TimeSpan:

TimeSpan.TicksPerSecond

Не уверен, что вы пытаетесь сделать, хотя ...

(DateTime.UtcNow.Ticks / TimeSpan.TicksPerSecond).ToString() // Total number of seconds...
0 голосов
/ 26 июня 2010

Число тактов в секунду в значении DateTime всегда равно 10000000. Один такт составляет 100 наносекунд.

Итак, если вы хотите преобразовать это в строку:

10000000.ToString()
0 голосов
/ 26 июня 2010

Думаю, вы захотите TimeSpan.TicksPerSecond.

Console.WriteLine("tps = {0}", TimeSpan.TicksPerSecond.ToString());
...