DateTime.ToString Method ()
Converts the value of the current DateTime object to its equivalent string representation using the formatting conventions of the current culture.
Assembly: mscorlib (in mscorlib.dll)
| Exception | Condition |
|---|---|
| ArgumentOutOfRangeException | The date and time is outside the range of dates supported by the calendar used by the current culture. |
The value of the current DateTime object is formatted using the general date and time format specifier ('G'). To format it using a specific date and time format specifier, call the ToString(String) method. To format it using the general date and time format specifier ('G') for a specific culture, call the ToString(IFormatProvider) method. To format it using a specific date and time format specifier and the conventions of a specific culture, call the ToString(String, IFormatProvider) method.
This method uses formatting information derived from the current culture. In particular, it combines the custom format strings returned by the ShortDatePattern and LongTimePattern properties of the DateTimeFormatInfo object returned by the Thread.CurrentThread.CurrentCulture.DateTimeFormat property. For more information, see CultureInfo.CurrentCulture. Other overloads of the ToString method enable you to specify the culture whose formatting to use and to define the output pattern of the DateTime value.
Notes to Callers:
The ToString() method returns the string representation of the date and time in the calendar used by the current culture. If the value of the current DateTime instance is earlier than Calendar.MinSupportedDateTime or later than Calendar.MaxSupportedDateTime, the method throws an ArgumentOutOfRangeException. The following example provides an illustration. It attempts to format a date that is outside the range of the HijriCalendar class when the current culture is Arabic (Syria).
Imports System.Globalization Imports System.Threading Module Example Public Sub Main() Dim date1 As Date = #1/1/550# Dim dft As CultureInfo Dim arSY As New CultureInfo("ar-SY") arSY.DateTimeFormat.Calendar = New HijriCalendar() ' Change current culture to ar-SY. dft = Thread.CurrentThread.CurrentCulture Thread.CurrentThread.CurrentCulture = arSY ' Display the date using the current culture's calendar. Try Console.WriteLine(date1.ToString()) Catch e As ArgumentOutOfRangeException Console.WriteLine("{0} is earlier than {1} or later than {2}", _ date1.ToString("d", CultureInfo.InvariantCulture), _ arSY.DateTimeFormat.Calendar.MinSupportedDateTime.ToString("d", CultureInfo.InvariantCulture), _ arSY.DateTimeFormat.Calendar.MaxSupportedDateTime.ToString("d", CultureInfo.InvariantCulture)) End Try ' Restore the default culture. Thread.CurrentThread.CurrentCulture = dft End Sub End Module ' The example displays the following output: ' 01/01/0550 is earlier than 07/18/0622 or later than 12/31/9999
The following example illustrates how the string representation of a DateTime value returned by the ToString() method depends on the thread current culture. It changes the current thread culture from en-US to fr-FR to ja-JP. and in each case calls the ToString() method to return the string representation of a date and time value using that culture.
Imports System.Globalization Imports System.Threading Module DateToStringExample Public Sub Main() Dim currentCulture As CultureInfo = Thread.CurrentThread.CurrentCulture Dim exampleDate As Date = #05/01/2008 6:32:06PM# ' Display the date using the current (en-US) culture. Console.WriteLine(exampleDate.ToString()) ' Change the current culture to fr-FR and display the date. Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("fr-FR") Console.WriteLine(exampleDate.ToString()) ' Change the current culture to ja-JP and display the date. Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("ja-JP") Console.WriteLine(exampleDate.ToString()) ' Restore the original culture Thread.CurrentThread.CurrentCulture = currentCulture End Sub End Module ' The example displays the following output to the console: ' 5/1/2008 6:32:06 PM ' 01/05/2008 18:32:06 ' 2008/05/01 18:32:06
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1