.NET Framework Class Library
TimeSpan.TicksPerDay Field
Represents the number of ticks in 1 day. This field is constant.
Assembly: mscorlib (in mscorlib.dll)
Syntax
Visual Basic
Public Const TicksPerDay As Long
C#
public const long TicksPerDay
Visual C++
public: literal long long TicksPerDay
F#
static val mutable TicksPerDay: int64
Remarks
The value of this constant is 864 billion; that is, 864,000,000,000.
Examples
The following example references and displays the value of the TicksPerDay field.
Visual Basic
' Example of the TimeSpan fields. Imports System Imports Microsoft.VisualBasic Module TimeSpanFieldsDemo ' Pad the end of a TimeSpan string with spaces if it does not ' contain milliseconds. Function Align( interval As TimeSpan ) As String Dim intervalStr As String = interval.ToString( ) Dim pointIndex As Integer = intervalStr.IndexOf( ":"c ) pointIndex = intervalStr.IndexOf( "."c, pointIndex ) If pointIndex < 0 Then intervalStr &= " " Align = intervalStr End Function Sub Main( ) Const numberFmt As String = "{0,-22}{1,18:N0}" Const timeFmt As String = "{0,-22}{1,26}" Console.WriteLine( _ "This example of the fields of the TimeSpan class" & _ vbCrLf & "generates the following output." & vbCrLf ) Console.WriteLine( numberFmt, "Field", "Value" ) Console.WriteLine( numberFmt, "-----", "-----" ) ' Display the maximum, minimum, and zero TimeSpan values. Console.WriteLine( timeFmt, "Maximum TimeSpan", _ Align( TimeSpan.MaxValue ) ) Console.WriteLine( timeFmt, "Minimum TimeSpan", _ Align( TimeSpan.MinValue ) ) Console.WriteLine( timeFmt, "Zero TimeSpan", _ Align( TimeSpan.Zero ) ) Console.WriteLine( ) ' Display the ticks-per-time-unit fields. Console.WriteLine( numberFmt, "Ticks per day", _ TimeSpan.TicksPerDay ) Console.WriteLine( numberFmt, "Ticks per hour", _ TimeSpan.TicksPerHour ) Console.WriteLine( numberFmt, "Ticks per minute", _ TimeSpan.TicksPerMinute ) Console.WriteLine( numberFmt, "Ticks per second", _ TimeSpan.TicksPerSecond ) Console.WriteLine( numberFmt, "Ticks per millisecond", _ TimeSpan.TicksPerMillisecond ) End Sub End Module ' This example of the fields of the TimeSpan class ' generates the following output. ' ' Field Value ' ----- ----- ' Maximum TimeSpan 10675199.02:48:05.4775807 ' Minimum TimeSpan -10675199.02:48:05.4775808 ' Zero TimeSpan 00:00:00 ' ' Ticks per day 864,000,000,000 ' Ticks per hour 36,000,000,000 ' Ticks per minute 600,000,000 ' Ticks per second 10,000,000 ' Ticks per millisecond 10,000
C#
// Example of the TimeSpan fields. using System; class TimeSpanFieldsDemo { // Pad the end of a TimeSpan string with spaces if it does not // contain milliseconds. static string Align( TimeSpan interval ) { string intervalStr = interval.ToString( ); int pointIndex = intervalStr.IndexOf( ':' ); pointIndex = intervalStr.IndexOf( '.', pointIndex ); if( pointIndex < 0 ) intervalStr += " "; return intervalStr; } static void Main( ) { const string numberFmt = "{0,-22}{1,18:N0}" ; const string timeFmt = "{0,-22}{1,26}" ; Console.WriteLine( "This example of the fields of the TimeSpan class" + "\ngenerates the following output.\n" ); Console.WriteLine( numberFmt, "Field", "Value" ); Console.WriteLine( numberFmt, "-----", "-----" ); // Display the maximum, minimum, and zero TimeSpan values. Console.WriteLine( timeFmt, "Maximum TimeSpan", Align( TimeSpan.MaxValue ) ); Console.WriteLine( timeFmt, "Minimum TimeSpan", Align( TimeSpan.MinValue ) ); Console.WriteLine( timeFmt, "Zero TimeSpan", Align( TimeSpan.Zero ) ); Console.WriteLine( ); // Display the ticks-per-time-unit fields. Console.WriteLine( numberFmt, "Ticks per day", TimeSpan.TicksPerDay ); Console.WriteLine( numberFmt, "Ticks per hour", TimeSpan.TicksPerHour ); Console.WriteLine( numberFmt, "Ticks per minute", TimeSpan.TicksPerMinute ); Console.WriteLine( numberFmt, "Ticks per second", TimeSpan.TicksPerSecond ); Console.WriteLine( numberFmt, "Ticks per millisecond", TimeSpan.TicksPerMillisecond ); } } /* This example of the fields of the TimeSpan class generates the following output. Field Value ----- ----- Maximum TimeSpan 10675199.02:48:05.4775807 Minimum TimeSpan -10675199.02:48:05.4775808 Zero TimeSpan 00:00:00 Ticks per day 864,000,000,000 Ticks per hour 36,000,000,000 Ticks per minute 600,000,000 Ticks per second 10,000,000 Ticks per millisecond 10,000 */
Visual C++
// Example of the TimeSpan fields. using namespace System; // Pad the end of a TimeSpan string with spaces if it does not // contain milliseconds. String^ Align( TimeSpan interval ) { String^ intervalStr = interval.ToString(); int pointIndex = intervalStr->IndexOf( ':' ); pointIndex = intervalStr->IndexOf( '.', pointIndex ); if ( pointIndex < 0 ) intervalStr = String::Concat( intervalStr, " " ); return intervalStr; } int main() { String^ numberFmt = "{0,-22}{1,18:N0}"; String^ timeFmt = "{0,-22}{1,26}"; Console::WriteLine( "This example of the fields of the TimeSpan class" "\ngenerates the following output.\n" ); Console::WriteLine( numberFmt, "Field", "Value" ); Console::WriteLine( numberFmt, "-----", "-----" ); // Display the maximum, minimum, and zero TimeSpan values. Console::WriteLine( timeFmt, "Maximum TimeSpan", Align( TimeSpan::MaxValue ) ); Console::WriteLine( timeFmt, "Minimum TimeSpan", Align( TimeSpan::MinValue ) ); Console::WriteLine( timeFmt, "Zero TimeSpan", Align( TimeSpan::Zero ) ); Console::WriteLine(); // Display the ticks-per-time-unit fields. Console::WriteLine( numberFmt, "Ticks per day", TimeSpan::TicksPerDay ); Console::WriteLine( numberFmt, "Ticks per hour", TimeSpan::TicksPerHour ); Console::WriteLine( numberFmt, "Ticks per minute", TimeSpan::TicksPerMinute ); Console::WriteLine( numberFmt, "Ticks per second", TimeSpan::TicksPerSecond ); Console::WriteLine( numberFmt, "Ticks per millisecond", TimeSpan::TicksPerMillisecond ); } /* This example of the fields of the TimeSpan class generates the following output. Field Value ----- ----- Maximum TimeSpan 10675199.02:48:05.4775807 Minimum TimeSpan -10675199.02:48:05.4775808 Zero TimeSpan 00:00:00 Ticks per day 864,000,000,000 Ticks per hour 36,000,000,000 Ticks per minute 600,000,000 Ticks per second 10,000,000 Ticks per millisecond 10,000 */
Version Information
.NET Framework
Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0.NET Framework Client Profile
Supported in: 4, 3.5 SP1Portable Class Library
Supported in: Portable Class LibraryPlatforms
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
See Also
Reference
Community Content
WThomasW
Does not account for leap seconds
Since both DateTime and TimeSpan are based on UTC, and UTC can have leap seconds (which can be positive or negative) inserted by the IERS depending on observation, this field (a) should not be a constant, but must depend upon the date and (b) therefore cannot always be 864 billion ticks. Not doing so can cause incorrect time spans (missing integral seconds) between DateTime dates, depending upon the number of leap seconds between those dates. This value is true only for standard Julian Days (not Julian Dates, which are different) as defined by the International Astronomical Union and based on Terrestrial Time(TT), not UTC.