TimeSpan.Parse Method (String)

Converts the string representation of a time interval to its TimeSpan equivalent.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

'Declaration
Public Shared Function Parse ( _
	s As String _
) As TimeSpan

Parameters

s
Type: System.String
A string that specifies that specifies the time interval to convert.

Return Value

Type: System.TimeSpan
A time interval that corresponds to s.

ExceptionCondition
ArgumentNullException

s is Nothing.

FormatException

s has an invalid format.

OverflowException

s represents a number less than TimeSpan.MinValue or greater than TimeSpan.MaxValue.

-or-

At least one of the days, hours, minutes, or seconds components is outside its valid range.

The s parameter contains a time interval specification of the form:

[ws][-]{ d | [d.]hh:mm[:ss[.ff]] }[ws]

Elements in square brackets ([ and ]) are optional. One selection from the list of alternatives enclosed in braces ({ and }) and separated by vertical bars (|) is required. The following table describes each element.

Element

Description

ws

Optional white space.

-

An optional minus sign, which indicates a negative TimeSpan.

d

Days, ranging from 0 to 10675199.

.

A culture-sensitive symbol that separates days from hours. The invariant format uses a period (".") character.

hh

Hours, ranging from 0 to 23.

:

The culture-sensitive time separator symbol. The invariant format uses a colon (":") character.

mm

Minutes, ranging from 0 to 59.

ss

Optional seconds, ranging from 0 to 59.

.

A culture-sensitive symbol that separates seconds from fractions of a second. The invariant format uses a period (".") character.

ff

Optional fractional seconds, consisting of one to seven decimal digits.

The components of s must collectively specify a time interval greater than or equal to TimeSpan.MinValue and less than or equal to TimeSpan.MaxValue.

The Parse(String) method first tries to parse s by using the invariant format. If this is not successful, it next tries each of the culture-specific formats for the current culture.

The following example uses the Parse method to create TimeSpan objects from valid TimeSpan strings and to raise exceptions from invalid TimeSpan strings.


' Example of the TimeSpan.Parse( String ) and TimeSpan.ToString( ) 
' methods.

Module Example

   Sub ParseNDisplayTimeSpan(ByVal outputBlock As System.Windows.Controls.TextBlock, ByVal intervalStr As String)

      ' Write the first part of the output line.
      outputBlock.Text += String.Format("{0,20}   ", intervalStr)

      ' Parse the parameter, and then convert it back to a string.
      Try
         Dim intervalVal As TimeSpan = TimeSpan.Parse(intervalStr)
         Dim intervalToStr As String = intervalVal.ToString()

         ' Pad the end of the TimeSpan string with spaces if it 
         ' does not contain milliseconds.
         Dim pIndex As Integer = intervalToStr.IndexOf(":"c)
         pIndex = intervalToStr.IndexOf("."c, pIndex)
         If pIndex < 0 Then intervalToStr &= "        "

         outputBlock.Text += String.Format("{0,21}", intervalToStr) & vbCrLf

         ' If Parse throws an exception, write the message.
      Catch ex As Exception
         outputBlock.Text &= ex.Message & vbCrLf
      End Try
   End Sub

   Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)

      outputBlock.Text += _
          "This example of TimeSpan.Parse( String ) and " & _
          vbCrLf & "TimeSpan.ToString( ) " & _
          "generates the following output." & vbCrLf + vbCrLf
      outputBlock.Text += String.Format("{0,20}   {1,21}", _
          "String to Parse", "TimeSpan or Exception") + vbCrLf
      outputBlock.Text += String.Format("{0,20}   {1,21}", _
          "---------------", "---------------------") + vbCrLf

      ParseNDisplayTimeSpan(outputBlock, "0")
      ParseNDisplayTimeSpan(outputBlock, "14")
      ParseNDisplayTimeSpan(outputBlock, "1:2:3")
      ParseNDisplayTimeSpan(outputBlock, "0:0:0.250")
      ParseNDisplayTimeSpan(outputBlock, "10.20:30:40.50")
      ParseNDisplayTimeSpan(outputBlock, "99.23:59:59.9999999")
      ParseNDisplayTimeSpan(outputBlock, "0023:0059:0059.0099")
      ParseNDisplayTimeSpan(outputBlock, "24:0:0")
      ParseNDisplayTimeSpan(outputBlock, "0:60:0")
      ParseNDisplayTimeSpan(outputBlock, "0:0:60")
      ParseNDisplayTimeSpan(outputBlock, "10:")
      ParseNDisplayTimeSpan(outputBlock, ":10")
      ParseNDisplayTimeSpan(outputBlock, "10:20:")
      ParseNDisplayTimeSpan(outputBlock, ".123")
      ParseNDisplayTimeSpan(outputBlock, "10.")
      ParseNDisplayTimeSpan(outputBlock, "10.12")
   End Sub
End Module

' This example of TimeSpan.Parse( String ) and
' TimeSpan.ToString( ) generates the following output.
' 
'      String to Parse   TimeSpan or Exception
'      ---------------   ---------------------
'                    0        00:00:00
'                   14     14.00:00:00
'                1:2:3        01:02:03
'            0:0:0.250        00:00:00.2500000
'       10.20:30:40.50     10.20:30:40.5000000
'  99.23:59:59.9999999     99.23:59:59.9999999
'  0023:0059:0059.0099        23:59:59.0099000
'               24:0:0   TimeSpan overflowed because the duration is too long.
'               0:60:0   TimeSpan overflowed because the duration is too long.
'               0:0:60   TimeSpan overflowed because the duration is too long.
'                  10:   Input string was not in a correct format.
'                  :10   Input string was not in a correct format.
'               10:20:   Input string was not in a correct format.
'                 .123   Input string was not in a correct format.
'                  10.   Input string was not in a correct format.
'                10.12   Input string was not in a correct format.


Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Community Additions

ADD
Show: