DateTimeOffset::ToString Method (String, IFormatProvider)
Converts the value of the current DateTimeOffset object to its equivalent string representation using the specified format and culture-specific format information.
Assembly: mscorlib (in mscorlib.dll)
public: virtual String^ ToString( String^ format, IFormatProvider^ formatProvider ) sealed
Parameters
- format
- Type: System::String
A format string.
- formatProvider
- Type: System::IFormatProvider
An object that supplies culture-specific formatting information.
Return Value
Type: System::StringA string representation of the value of the current DateTimeOffset object, as specified by format and provider.
Implements
IFormattable::ToString(String, IFormatProvider)| Exception | Condition |
|---|---|
| FormatException | The length of format is one, and it is not one of the standard format specifier characters defined for DateTimeFormatInfo. -or- format does not contain a valid custom format pattern. |
| ArgumentOutOfRangeException | The date and time is outside the range of dates supported by the calendar used by formatProvider. |
The format parameter should contain either a single format specifier character (see Standard Date and Time Format Strings) or a custom format pattern (see Custom Date and Time Format Strings). If format is a null or empty string (""), the DateTimeOffset object is output using the default format.
The following table shows the exact operation of certain format specifiers when used with DateTimeOffset, which differs from their behavior when used with DateTime.
Existing format specifier | New behavior |
|---|---|
"K" | Designed to round-trip a date and time. With DateTimeOffset, maps to "zzz" (the offset is always displayed with hours and minutes). Note that "K" is a custom format specifier; it cannot appear as the single character in format. |
"U" | Not supported. |
"r" | Converts the DateTimeOffset object to Coordinated Universal Time (UTC) and outputs it using the custom format string ddd, dd MMM yyyy HH:mm:ss GMT. |
"u" | Converts the DateTimeOffset value to UTC and outputs it using the format yyyy-MM-dd HH:mm:ssZ. |
The remaining standard date and time format specifiers behave the same with the ToString(String) method as they do with the ToString method.
The pattern that corresponds to standard format specifiers, as well as the symbols and names of date and time components, is defined by the formatProvider parameter. The formatProvider parameter can be either of the following:
A CultureInfo object that represents the culture whose formatting is used in input. The DateTimeFormatInfo object returned by the CultureInfo::DateTimeFormat property defines the formatting used in input.
A DateTimeFormatInfo object that defines the format of date and time data.
If formatProvider is nullptr, the DateTimeFormatInfo object associated with the current culture is used (see CurrentCulture).
Notes to CallersThe ToString(String, IFormatProvider) method returns the string representation of the date and time in the calendar used by the formatProvider parameter. Its calendar is defined by the Calendar property. If the value of the current DateTimeOffset 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 UmAlQuraCalendar class.
The following example uses the ToString(String, IFormatProvider) method to display a DateTimeOffset object using a custom format string for several different cultures.
Windows 7, Windows Vista SP1 or later, Windows XP SP3, 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.