Condividi tramite


DateTime.Ticks Proprietà

Definizione

Ottiene il numero di tick che rappresentano data e ora dell'istanza.

public:
 property long Ticks { long get(); };
public long Ticks { get; }
member this.Ticks : int64
Public ReadOnly Property Ticks As Long

Valore della proprietà

Numero di tick che rappresentano data e ora dell'istanza. Valore è compreso tra DateTime.MinValue.Ticks e DateTime.MaxValue.Ticks.

Esempio

Nell'esempio seguente viene usata la Ticks proprietà per visualizzare il numero di tick trascorsi dall'inizio del xx secolo e per creare un'istanza di un TimeSpan oggetto. L'oggetto TimeSpan viene quindi usato per visualizzare il tempo trascorso usando diversi altri intervalli di tempo.

DateTime centuryBegin = new DateTime(2001, 1, 1);
DateTime currentDate = DateTime.Now;

long elapsedTicks = currentDate.Ticks - centuryBegin.Ticks;
TimeSpan elapsedSpan = new TimeSpan(elapsedTicks);

Console.WriteLine("Elapsed from the beginning of the century to {0:f}:",
                   currentDate);
Console.WriteLine("   {0:N0} nanoseconds", elapsedTicks * 100);
Console.WriteLine("   {0:N0} ticks", elapsedTicks);
Console.WriteLine("   {0:N2} seconds", elapsedSpan.TotalSeconds);
Console.WriteLine("   {0:N2} minutes", elapsedSpan.TotalMinutes);
Console.WriteLine("   {0:N0} days, {1} hours, {2} minutes, {3} seconds",
                  elapsedSpan.Days, elapsedSpan.Hours,
                  elapsedSpan.Minutes, elapsedSpan.Seconds);

// This example displays an output similar to the following:
//
// Elapsed from the beginning of the century to Thursday, 14 November 2019 18:21:
//    595,448,498,171,000,000 nanoseconds
//    5,954,484,981,710,000 ticks
//    595,448,498.17 seconds
//    9,924,141.64 minutes
//    6,891 days, 18 hours, 21 minutes, 38 seconds
open System

let centuryBegin = DateTime(2001, 1, 1)
let currentDate = DateTime.Now

let elapsedTicks = currentDate.Ticks - centuryBegin.Ticks
let elapsedSpan = TimeSpan elapsedTicks

printfn $"Elapsed from the beginning of the century to {currentDate:f}:"
printfn $"   {elapsedTicks * 100L:N0} nanoseconds"
printfn $"   {elapsedTicks:N0} ticks"
printfn $"   {elapsedSpan.TotalSeconds:N2} seconds"
printfn $"   {elapsedSpan.TotalMinutes:N2} minutes"
printfn $"   {elapsedSpan.Days:N0} days, {elapsedSpan.Hours} hours, {elapsedSpan.Minutes} minutes, {elapsedSpan.Seconds} seconds"

// This example displays an output similar to the following:
//
// Elapsed from the beginning of the century to Thursday, 14 November 2019 18:21:
//    595,448,498,171,000,000 nanoseconds
//    5,954,484,981,710,000 ticks
//    595,448,498.17 seconds
//    9,924,141.64 minutes
//    6,891 days, 18 hours, 21 minutes, 38 seconds
Dim centuryBegin As Date = #1/1/2001 0:0:0#
Dim currentDate As Date = Date.Now
Dim elapsedTicks As Long = currentDate.Ticks - centuryBegin.Ticks
Dim elapsedSpan As New TimeSpan(elapsedTicks)

Console.WriteLine("Elapsed from the beginning of the century to {0:f}:", _
                   currentDate)
Console.WriteLine("   {0:N0} nanoseconds", elapsedTicks * 100)
Console.WriteLine("   {0:N0} ticks", elapsedTicks)
Console.WriteLine("   {0:N2} seconds", elapsedSpan.TotalSeconds)
Console.WriteLine("   {0:N2} minutes", elapsedSpan.TotalMinutes)
Console.WriteLine("   {0:N0} days, {1} hours, {2} minutes, {3} seconds", _
                  elapsedSpan.Days, elapsedSpan.Hours, _
                  elapsedSpan.Minutes, elapsedSpan.Seconds)
' If run on December 14, 2007, at 15:23, this example displays the
' following output to the console:
'          219,338,580,000,000,000 nanoseconds
'          2,193,385,800,000,000 ticks
'          219,338,580.00 seconds
'          3,655,643.00 minutes
'          2,538 days, 15 hours, 23 minutes, 0 seconds

Commenti

Un singolo segno di spunta rappresenta un centinaio di nanosecondi o un dieci milioni di secondi. Ci sono 10.000 tick in un millisecondo (vedere TicksPerMillisecond) e 10 milioni di tick in un secondo.

Il valore di questa proprietà rappresenta il numero di intervalli da 100 nanosecondi trascorsi dalle 12:00:00 mezzanotte, 1 gennaio 0001 nel calendario gregoriano, che rappresenta MinValue. Non include il numero di tick che sono attribuibili a secondi di salto. Se l'oggetto DateTime ha la proprietà Kind impostata su Local, i suoi tick rappresentano il tempo trascorso dal 12:00:00 mezzanotte, 1 gennaio 0001 nell'ora locale, come specificato dall'impostazione del fuso orario corrente. Se l'oggetto DateTime ha la proprietà Kind impostata su Utc, i suoi tick rappresentano il tempo trascorso dal 12:00:00 mezzanotte, 1 gennaio 0001 nell'ora universale coordinata. Se l'oggetto DateTime ha la proprietà Kind impostata su Unspecified, i suoi tick rappresentano il tempo trascorso dal 12:00:00 mezzanotte, 1 gennaio 0001 nel fuso orario sconosciuto.

In generale, i tick rappresentano l'ora in base al fuso orario specificato dalla Kind proprietà.

Si applica a