' Example of the TimeSpan class properties.
Imports System
Imports Microsoft.VisualBasic
Module TimeSpanPropertiesDemo
Const headerFmt As String = vbCrLf & "{0,-45}"
Const dataFmt As String = "{0,-12}{1,8} {2,-18}{3,21}"
' Display the properties of the TimeSpan parameter.
Sub ShowTimeSpanProperties( interval as TimeSpan )
Console.WriteLine( "{0,21}", interval )
Console.WriteLine( dataFmt, _
"Days", interval.Days, "TotalDays", interval.TotalDays )
Console.WriteLine( dataFmt, "Hours", interval.Hours, _
"TotalHours", interval.TotalHours )
Console.WriteLine( dataFmt, "Minutes", interval.Minutes, _
"TotalMinutes", interval.TotalMinutes )
Console.WriteLine( dataFmt, "Seconds", interval.Seconds, _
"TotalSeconds", interval.TotalSeconds )
Console.WriteLine( dataFmt, _
"Milliseconds", interval.Milliseconds, _
"TotalMilliseconds", interval.TotalMilliseconds )
Console.WriteLine( dataFmt, _
Nothing, Nothing, "Ticks", interval.Ticks )
End Sub
Sub Main( )
Console.WriteLine( _
"This example of the TimeSpan class properties " & _
"generates the " & vbCrLf & "following output. It " & _
"creates several TimeSpan objects and " & vbCrLf & _
"displays the values of the TimeSpan properties for " & _
"each." )
' Create and display a TimeSpan value of 1 tick.
Console.Write( headerFmt, "TimeSpan( 1 )" )
ShowTimeSpanProperties( new TimeSpan( 1 ) )
' Create a TimeSpan value with a large number of ticks.
Console.Write( headerFmt, "TimeSpan( 111222333444555 )" )
ShowTimeSpanProperties( new TimeSpan( 111222333444555 ) )
' This TimeSpan has all fields specified.
Console.Write( headerFmt, "TimeSpan( 10, 20, 30, 40, 50 )" )
ShowTimeSpanProperties( new TimeSpan( 10, 20, 30, 40, 50 ) )
' This TimeSpan has all fields overflowing.
Console.Write( headerFmt, _
"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( headerFmt, "FromDays( 20.84745602 )" )
ShowTimeSpanProperties( TimeSpan.FromDays( 20.84745602 ) )
End Sub
End Module
' This example of the TimeSpan class properties generates the
' following output. It creates several TimeSpan objects and
' displays the values of the TimeSpan properties for each.
'
' TimeSpan( 1 ) 00:00:00.0000001
' Days 0 TotalDays 1.15740740740741E-12
' Hours 0 TotalHours 2.77777777777778E-11
' Minutes 0 TotalMinutes 1.66666666666667E-09
' Seconds 0 TotalSeconds 1E-07
' Milliseconds 0 TotalMilliseconds 0.0001
' Ticks 1
'
' TimeSpan( 111222333444555 ) 128.17:30:33.3444555
' Days 128 TotalDays 128.729552597865
' Hours 17 TotalHours 3089.50926234875
' Minutes 30 TotalMinutes 185370.555740925
' Seconds 33 TotalSeconds 11122233.3444555
' Milliseconds 344 TotalMilliseconds 11122233344.4555
' Ticks 111222333444555
'
' TimeSpan( 10, 20, 30, 40, 50 ) 10.20:30:40.0500000
' Days 10 TotalDays 10.8546302083333
' Hours 20 TotalHours 260.511125
' Minutes 30 TotalMinutes 15630.6675
' Seconds 40 TotalSeconds 937840.05
' Milliseconds 50 TotalMilliseconds 937840050
' Ticks 9378400500000
'
' TimeSpan( 1111, 2222, 3333, 4444, 5555 ) 1205.22:47:09.5550000
' Days 1205 TotalDays 1205.94941614583
' Hours 22 TotalHours 28942.7859875
' Minutes 47 TotalMinutes 1736567.15925
' Seconds 9 TotalSeconds 104194029.555
' Milliseconds 555 TotalMilliseconds 104194029555
' Ticks 1041940295550000
'
' FromDays( 20.84745602 ) 20.20:20:20.2000000
' Days 20 TotalDays 20.8474560185185
' Hours 20 TotalHours 500.338944444444
' Minutes 20 TotalMinutes 30020.3366666667
' Seconds 20 TotalSeconds 1801220.2
' Milliseconds 200 TotalMilliseconds 1801220200
' Ticks 18012202000000