This documentation is archived and is not being maintained.

DateTime.GetDateTimeFormats Method (Char, IFormatProvider)

Updated: January 2010

Converts the value of this instance to all the string representations supported by the specified standard date and time format specifier and culture-specific formatting information.

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

public string[] GetDateTimeFormats(
	char format,
	IFormatProvider provider


Type: System.Char

A standard date and time format string (see Remarks).

Type: System.IFormatProvider

An object that supplies culture-specific formatting information about this instance.

Return Value

Type: System.String[]
A string array where each element is the representation of the value of this instance formatted with one of the standard date and time format specifiers.


format is not a valid standard date and time format specifier character.

The format parameter can be any of the standard date and time format specifiers. These include "d", "D", "f", "F", "g", "G", "M" (or "m"), "O" (or "o"), "R" (or "r"), "s", "t", "T", "u", "U", and "Y" (or "y"). For more information, see Standard Date and Time Format Strings.

Each element of the return value is formatted using culture-specific information supplied by provider.


   Because this method uses culture-sensitive data, your application should not assume that multiple calls to the method will return identical data unless provider is a CultureInfo object that represents the invariant culture. The data returned by this method can change if the user overrides the individual cultural settings of provider or if an update occurs to the system's cultural data for provider.

The following example demonstrates the GetDateTimeFormats(Char, IFormatProvider) method. It displays the string representations of a date using the short date format specifier ("d") for the fr-FR culture.

		DateTime july28 = new DateTime(2009, 7, 28, 5, 23, 15);
		IFormatProvider culture = 
			new System.Globalization.CultureInfo("fr-FR", true);
		// Get the short date formats using the "fr-FR" culture.
		string [] frenchJuly28Formats = 
					july28.GetDateTimeFormats('d', culture);

		// Display july28 in short date formats using "fr-FR" culture.
		foreach (string format in frenchJuly28Formats) {
      // The example displays the following output: 
      //       28/07/2009 
      //       28/07/09 
      //       28.07.09 
      //       28-07-09 
      //       2009-07-28

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0




January 2010

Noted possibility of data change between method invocations.

Content bug fix.

December 2008

Replaced the example.

Information enhancement.