TimeSpan.Ticks Property

Definition

Gets the number of ticks that represent the value of the current TimeSpan structure.

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

Property Value

The number of ticks contained in this instance.

Examples

The following example creates several TimeSpan objects and displays the Ticks property of each.

using namespace System;

static void ShowTimeSpanProperties(TimeSpan interval)
{
   Console::WriteLine("{0,21}", interval );
   Console::WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}",
                      "Days", interval.Days, "TotalDays",
                      interval.TotalDays);
   Console::WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}",
                      "Hours", interval.Hours, "TotalHours",
                      interval.TotalHours);
   Console::WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}",
                      "Minutes", interval.Minutes, "TotalMinutes",
                      interval.TotalMinutes);
   Console::WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}",
                      "Seconds", interval.Seconds, "TotalSeconds",
                      interval.TotalSeconds);
   Console::WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}",
                      "Milliseconds", interval.Milliseconds,
                      "TotalMilliseconds", interval.TotalMilliseconds);
   Console::WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N0}",
                      nullptr, nullptr, "Ticks", interval.Ticks);
}

void main()
{
   // Create and display a TimeSpan value of 1 tick.
   Console::Write("\n{0,-45}", "TimeSpan( 1 )");
   ShowTimeSpanProperties(TimeSpan(1));
   
   // Create a TimeSpan value with a large number of ticks.
   Console::Write("\n{0,-45}", "TimeSpan( 111222333444555 )");
   ShowTimeSpanProperties( TimeSpan(111222333444555));
   
   // This TimeSpan has all fields specified.
   Console::Write("\n{0,-45}", "TimeSpan( 10, 20, 30, 40, 50 )");
   ShowTimeSpanProperties( TimeSpan(10,20,30,40,50));
   
   // This TimeSpan has all fields overflowing.
   Console::Write("\n{0,-45}", "TimeSpan( 1111, 2222, 3333, 4444, 5555 )");
   ShowTimeSpanProperties( TimeSpan(1111,2222,3333,4444,5555));
   
   // This TimeSpan is based on a number of days.
   Console::Write("\n{0,-45}", "FromDays( 20.84745602 )");
   ShowTimeSpanProperties( TimeSpan::FromDays( 20.84745602 ));
}
// The example displays the following output if the current culture is en-US:
//    TimeSpan( 1 )                                     00:00:00.0000001
//    Days               0       TotalDays                         0.000
//    Hours              0       TotalHours                        0.000
//    Minutes            0       TotalMinutes                      0.000
//    Seconds            0       TotalSeconds                      0.000
//    Milliseconds       0       TotalMilliseconds                 0.000
//                               Ticks                                 1
//
//    TimeSpan( 111222333444555 )                   128.17:30:33.3444555
//    Days             128       TotalDays                       128.730
//    Hours             17       TotalHours                    3,089.509
//    Minutes           30       TotalMinutes                185,370.556
//    Seconds           33       TotalSeconds             11,122,233.344
//    Milliseconds     344       TotalMilliseconds    11,122,233,344.456
//                               Ticks               111,222,333,444,555
//
//    TimeSpan( 10, 20, 30, 40, 50 )                 10.20:30:40.0500000
//    Days              10       TotalDays                        10.855
//    Hours             20       TotalHours                      260.511
//    Minutes           30       TotalMinutes                 15,630.668
//    Seconds           40       TotalSeconds                937,840.050
//    Milliseconds      50       TotalMilliseconds       937,840,050.000
//                               Ticks                 9,378,400,500,000
//
//    TimeSpan( 1111, 2222, 3333, 4444, 5555 )     1205.22:47:09.5550000
//    Days            1205       TotalDays                     1,205.949
//    Hours             22       TotalHours                   28,942.786
//    Minutes           47       TotalMinutes              1,736,567.159
//    Seconds            9       TotalSeconds            104,194,029.555
//    Milliseconds     555       TotalMilliseconds   104,194,029,555.000
//                               Ticks             1,041,940,295,550,000
//
//    FromDays( 20.84745602 )                        20.20:20:20.2000000
//    Days              20       TotalDays                        20.847
//    Hours             20       TotalHours                      500.339
//    Minutes           20       TotalMinutes                 30,020.337
//    Seconds           20       TotalSeconds              1,801,220.200
//    Milliseconds     200       TotalMilliseconds     1,801,220,200.000
//                               Ticks                18,012,202,000,000
using System;

class Example
{
    static void Main()
    {
        // Create and display a TimeSpan value of 1 tick.
        Console.Write("\n{0,-45}", "TimeSpan( 1 )");
        ShowTimeSpanProperties(new TimeSpan(1));

        // Create a TimeSpan value with a large number of ticks.
        Console.Write("\n{0,-45}", "TimeSpan( 111222333444555 )");
        ShowTimeSpanProperties(new TimeSpan(111222333444555));

        // This TimeSpan has all fields specified.
        Console.Write("\n{0,-45}", "TimeSpan( 10, 20, 30, 40, 50 )");
        ShowTimeSpanProperties(new TimeSpan(10, 20, 30, 40, 50));

        // This TimeSpan has all fields overflowing.
        Console.Write("\n{0,-45}",
                      "TimeSpan( 1111, 2222, 3333, 4444, 5555 )");
        ShowTimeSpanProperties(
           new TimeSpan(1111, 2222, 3333, 4444, 5555));

        // This TimeSpan is based on a number of days.
        Console.Write("\n{0,-45}", "FromDays( 20.84745602 )");
        ShowTimeSpanProperties(TimeSpan.FromDays( 20.84745602));
    }

    static void ShowTimeSpanProperties( TimeSpan interval )
    {
        Console.WriteLine("{0,21}", interval);
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}", "Days",
                          interval.Days, "TotalDays", interval.TotalDays);
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}", "Hours",
                          interval.Hours, "TotalHours", interval.TotalHours);
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}", "Minutes",
                          interval.Minutes, "TotalMinutes", interval.TotalMinutes);
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}", "Seconds",
                          interval.Seconds, "TotalSeconds", interval.TotalSeconds);
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}", "Milliseconds",
                          interval.Milliseconds, "TotalMilliseconds",
                          interval.TotalMilliseconds);
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N0}", null, null,
            "Ticks", interval.Ticks);
    } 
}
// The example displays the following output if the current culture is en-US:
//    TimeSpan( 1 )                                     00:00:00.0000001
//    Days               0       TotalDays                         0.000
//    Hours              0       TotalHours                        0.000
//    Minutes            0       TotalMinutes                      0.000
//    Seconds            0       TotalSeconds                      0.000
//    Milliseconds       0       TotalMilliseconds                 0.000
//                               Ticks                                 1
//
//    TimeSpan( 111222333444555 )                   128.17:30:33.3444555
//    Days             128       TotalDays                       128.730
//    Hours             17       TotalHours                    3,089.509
//    Minutes           30       TotalMinutes                185,370.556
//    Seconds           33       TotalSeconds             11,122,233.344
//    Milliseconds     344       TotalMilliseconds    11,122,233,344.456
//                               Ticks               111,222,333,444,555
//
//    TimeSpan( 10, 20, 30, 40, 50 )                 10.20:30:40.0500000
//    Days              10       TotalDays                        10.855
//    Hours             20       TotalHours                      260.511
//    Minutes           30       TotalMinutes                 15,630.668
//    Seconds           40       TotalSeconds                937,840.050
//    Milliseconds      50       TotalMilliseconds       937,840,050.000
//                               Ticks                 9,378,400,500,000
//
//    TimeSpan( 1111, 2222, 3333, 4444, 5555 )     1205.22:47:09.5550000
//    Days            1205       TotalDays                     1,205.949
//    Hours             22       TotalHours                   28,942.786
//    Minutes           47       TotalMinutes              1,736,567.159
//    Seconds            9       TotalSeconds            104,194,029.555
//    Milliseconds     555       TotalMilliseconds   104,194,029,555.000
//                               Ticks             1,041,940,295,550,000
//
//    FromDays( 20.84745602 )                        20.20:20:20.2000000
//    Days              20       TotalDays                        20.847
//    Hours             20       TotalHours                      500.339
//    Minutes           20       TotalMinutes                 30,020.337
//    Seconds           20       TotalSeconds              1,801,220.200
//    Milliseconds     200       TotalMilliseconds     1,801,220,200.000
//                               Ticks                18,012,202,000,000
open System

let showTimeSpanProperties (interval: TimeSpan) =
    printfn $"{interval,21}"
    printfn $"""{"Days",-12}{interval.Days,8}       {"TotalDays",-18}{interval.TotalDays,21:N3}"""
    printfn $"""{"Hours",-12}{interval.Hours,8}       {"TotalHours",-18}{interval.TotalHours,21:N3}"""
    printfn $"""{"Minutes",-12}{interval.Minutes,8}       {"TotalMinutes",-18}{interval.TotalMinutes,21:N3}"""
    printfn $"""{"Seconds",-12}{interval.Seconds,8}       {"TotalSeconds",-18}{interval.TotalSeconds,21:N3}"""
    printfn $"""{"Milliseconds",-12}{interval.Milliseconds,8}       {"TotalMilliseconds",-18}{interval.TotalMilliseconds,21:N3}"""
    printfn $"""{null,-12}{null,8}       {"Ticks",-18}{interval.Ticks,21:N0}"""

// Create and display a TimeSpan value of 1 tick.
printf "\n%-45s" "TimeSpan( 1 )"
showTimeSpanProperties (TimeSpan 1)

// Create a TimeSpan value with a large number of ticks.
printf "\n%-45s" "TimeSpan( 111222333444555 )"
showTimeSpanProperties (TimeSpan 111222333444555L)

// This TimeSpan has all fields specified.
printf "\n%-45s" "TimeSpan( 10, 20, 30, 40, 50 )"
showTimeSpanProperties (TimeSpan(10, 20, 30, 40, 50))

// This TimeSpan has all fields overflowing.
printf "\n%-45s" "TimeSpan( 1111, 2222, 3333, 4444, 5555 )"
showTimeSpanProperties (TimeSpan(1111, 2222, 3333, 4444, 5555))

// This TimeSpan is based on a number of days.
printf "\n%-45s" "FromDays( 20.84745602 )"
showTimeSpanProperties (TimeSpan.FromDays 20.84745602)

// The example displays the following output if the current culture is en-US:
//    TimeSpan( 1 )                                     00:00:00.0000001
//    Days               0       TotalDays                         0.000
//    Hours              0       TotalHours                        0.000
//    Minutes            0       TotalMinutes                      0.000
//    Seconds            0       TotalSeconds                      0.000
//    Milliseconds       0       TotalMilliseconds                 0.000
//                               Ticks                                 1
//
//    TimeSpan( 111222333444555 )                   128.17:30:33.3444555
//    Days             128       TotalDays                       128.730
//    Hours             17       TotalHours                    3,089.509
//    Minutes           30       TotalMinutes                185,370.556
//    Seconds           33       TotalSeconds             11,122,233.344
//    Milliseconds     344       TotalMilliseconds    11,122,233,344.456
//                               Ticks               111,222,333,444,555
//
//    TimeSpan( 10, 20, 30, 40, 50 )                 10.20:30:40.0500000
//    Days              10       TotalDays                        10.855
//    Hours             20       TotalHours                      260.511
//    Minutes           30       TotalMinutes                 15,630.668
//    Seconds           40       TotalSeconds                937,840.050
//    Milliseconds      50       TotalMilliseconds       937,840,050.000
//                               Ticks                 9,378,400,500,000
//
//    TimeSpan( 1111, 2222, 3333, 4444, 5555 )     1205.22:47:09.5550000
//    Days            1205       TotalDays                     1,205.949
//    Hours             22       TotalHours                   28,942.786
//    Minutes           47       TotalMinutes              1,736,567.159
//    Seconds            9       TotalSeconds            104,194,029.555
//    Milliseconds     555       TotalMilliseconds   104,194,029,555.000
//                               Ticks             1,041,940,295,550,000
//
//    FromDays( 20.84745602 )                        20.20:20:20.2000000
//    Days              20       TotalDays                        20.847
//    Hours             20       TotalHours                      500.339
//    Minutes           20       TotalMinutes                 30,020.337
//    Seconds           20       TotalSeconds              1,801,220.200
//    Milliseconds     200       TotalMilliseconds     1,801,220,200.000
//                               Ticks                18,012,202,000,000
Module Example
    Sub Main()
        ' Create and display a TimeSpan value of 1 tick.
        Console.Write(vbCrLf & "{0,-45}", "TimeSpan( 1 )")
        ShowTimeSpanProperties(New TimeSpan(1))

        ' Create a TimeSpan value with a large number of ticks.
        Console.Write(vbCrLf & "{0,-45}", "TimeSpan( 111222333444555 )")
        ShowTimeSpanProperties(New TimeSpan(111222333444555))

        ' This TimeSpan has all fields specified.
        Console.Write(vbCrLf & "{0,-45}", "TimeSpan( 10, 20, 30, 40, 50 )")
        ShowTimeSpanProperties(New TimeSpan( 10, 20, 30, 40, 50))

        ' This TimeSpan has all fields overflowing.
        Console.Write(vbCrLf & "{0,-45}",
                      "TimeSpan( 1111, 2222, 3333, 4444, 5555 )")
        ShowTimeSpanProperties(New TimeSpan( 1111, 2222, 3333, 4444, 5555))

        ' This TimeSpan is based on a number of days.
        Console.Write( vbCrLf & "{0,-45}", "FromDays( 20.84745602 )")
        ShowTimeSpanProperties(TimeSpan.FromDays( 20.84745602))
    End Sub

    Sub ShowTimeSpanProperties(interval As TimeSpan)
        Console.WriteLine("{0,21}", interval)
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}",
            "Days", interval.Days, "TotalDays", interval.TotalDays)
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}", "Hours", interval.Hours,
            "TotalHours", interval.TotalHours)
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}", "Minutes", interval.Minutes,
            "TotalMinutes", interval.TotalMinutes)
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}", "Seconds", interval.Seconds,
            "TotalSeconds", interval.TotalSeconds)
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N3}",
            "Milliseconds", interval.Milliseconds,
            "TotalMilliseconds", interval.TotalMilliseconds)
        Console.WriteLine("{0,-12}{1,8}       {2,-18}{3,21:N0}",
            Nothing, Nothing, "Ticks", interval.Ticks)
    End Sub 
End Module
' The example displays the following output if the current culture is en-US:
'    TimeSpan( 1 )                                     00:00:00.0000001
'    Days               0       TotalDays                         0.000
'    Hours              0       TotalHours                        0.000
'    Minutes            0       TotalMinutes                      0.000
'    Seconds            0       TotalSeconds                      0.000
'    Milliseconds       0       TotalMilliseconds                 0.000
'                               Ticks                                 1
'
'    TimeSpan( 111222333444555 )                   128.17:30:33.3444555
'    Days             128       TotalDays                       128.730
'    Hours             17       TotalHours                    3,089.509
'    Minutes           30       TotalMinutes                185,370.556
'    Seconds           33       TotalSeconds             11,122,233.344
'    Milliseconds     344       TotalMilliseconds    11,122,233,344.456
'                               Ticks               111,222,333,444,555
'
'    TimeSpan( 10, 20, 30, 40, 50 )                 10.20:30:40.0500000
'    Days              10       TotalDays                        10.855
'    Hours             20       TotalHours                      260.511
'    Minutes           30       TotalMinutes                 15,630.668
'    Seconds           40       TotalSeconds                937,840.050
'    Milliseconds      50       TotalMilliseconds       937,840,050.000
'                               Ticks                 9,378,400,500,000
'
'    TimeSpan( 1111, 2222, 3333, 4444, 5555 )     1205.22:47:09.5550000
'    Days            1205       TotalDays                     1,205.949
'    Hours             22       TotalHours                   28,942.786
'    Minutes           47       TotalMinutes              1,736,567.159
'    Seconds            9       TotalSeconds            104,194,029.555
'    Milliseconds     555       TotalMilliseconds   104,194,029,555.000
'                               Ticks             1,041,940,295,550,000
'
'    FromDays( 20.84745602 )                        20.20:20:20.2000000
'    Days              20       TotalDays                        20.847
'    Hours             20       TotalHours                      500.339
'    Minutes           20       TotalMinutes                 30,020.337
'    Seconds           20       TotalSeconds              1,801,220.200
'    Milliseconds     200       TotalMilliseconds     1,801,220,200.000
'                               Ticks                18,012,202,000,000

Remarks

The smallest unit of time is the tick, which is equal to 100 nanoseconds or one ten-millionth of a second. There are 10,000 ticks in a millisecond. The value of the Ticks property can be negative or positive to represent a negative or positive time interval.

Applies to

See also