Partager via


DateTimeFormatInfo.GetAllDateTimePatterns Méthode

Définition

Retourne les modèles standard selon lesquels un format peut être appliqué aux valeurs de date et d’heure.

Surcharges

GetAllDateTimePatterns()

Retourne tous les modèles standard selon lesquels un format peut être appliqué aux valeurs de date et d’heure.

GetAllDateTimePatterns(Char)

Retourne tous les modèles dans lesquels les valeurs de date et d’heure peuvent être mises en forme en utilisant la chaîne de format standard.

GetAllDateTimePatterns()

Source:
DateTimeFormatInfo.cs
Source:
DateTimeFormatInfo.cs
Source:
DateTimeFormatInfo.cs

Retourne tous les modèles standard selon lesquels un format peut être appliqué aux valeurs de date et d’heure.

public:
 cli::array <System::String ^> ^ GetAllDateTimePatterns();
public string[] GetAllDateTimePatterns ();
member this.GetAllDateTimePatterns : unit -> string[]
Public Function GetAllDateTimePatterns () As String()

Retours

String[]

Tableau qui contient les modèles standard selon lesquels un format peut être appliqué aux valeurs de date et d'heure.

Exemples

L’exemple suivant affiche les chaînes de format de date et d’heure pour la culture invariante, ainsi que la chaîne de résultat qui est produite lorsque cette chaîne de format est utilisée pour mettre en forme une date particulière.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      DateTime date = new DateTime(2014, 8, 28, 12, 28, 30);
      DateTimeFormatInfo invDTF = new DateTimeFormatInfo();
      String[] formats = invDTF.GetAllDateTimePatterns();

      Console.WriteLine("{0,-40} {1}\n", "Pattern", "Result String");
      foreach (var fmt in formats)
         Console.WriteLine("{0,-40} {1}", fmt, date.ToString(fmt));
   }
}
// The example displays the following output:
//    Pattern                                  Result String
//
//    MM/dd/yyyy                               08/28/2014
//    yyyy-MM-dd                               2014-08-28
//    dddd, dd MMMM yyyy                       Thursday, 28 August 2014
//    dddd, dd MMMM yyyy HH:mm                 Thursday, 28 August 2014 12:28
//    dddd, dd MMMM yyyy hh:mm tt              Thursday, 28 August 2014 12:28 PM
//    dddd, dd MMMM yyyy H:mm                  Thursday, 28 August 2014 12:28
//    dddd, dd MMMM yyyy h:mm tt               Thursday, 28 August 2014 12:28 PM
//    dddd, dd MMMM yyyy HH:mm:ss              Thursday, 28 August 2014 12:28:30
//    MM/dd/yyyy HH:mm                         08/28/2014 12:28
//    MM/dd/yyyy hh:mm tt                      08/28/2014 12:28 PM
//    MM/dd/yyyy H:mm                          08/28/2014 12:28
//    MM/dd/yyyy h:mm tt                       08/28/2014 12:28 PM
//    yyyy-MM-dd HH:mm                         2014-08-28 12:28
//    yyyy-MM-dd hh:mm tt                      2014-08-28 12:28 PM
//    yyyy-MM-dd H:mm                          2014-08-28 12:28
//    yyyy-MM-dd h:mm tt                       2014-08-28 12:28 PM
//    MM/dd/yyyy HH:mm:ss                      08/28/2014 12:28:30
//    yyyy-MM-dd HH:mm:ss                      2014-08-28 12:28:30
//    MMMM dd                                  August 28
//    MMMM dd                                  August 28
//    yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffffffK   2014-08-28T12:28:30.0000000
//    yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffffffK   2014-08-28T12:28:30.0000000
//    ddd, dd MMM yyyy HH':'mm':'ss 'GMT'      Thu, 28 Aug 2014 12:28:30 GMT
//    ddd, dd MMM yyyy HH':'mm':'ss 'GMT'      Thu, 28 Aug 2014 12:28:30 GMT
//    yyyy'-'MM'-'dd'T'HH':'mm':'ss            2014-08-28T12:28:30
//    HH:mm                                    12:28
//    hh:mm tt                                 12:28 PM
//    H:mm                                     12:28
//    h:mm tt                                  12:28 PM
//    HH:mm:ss                                 12:28:30
//    yyyy'-'MM'-'dd HH':'mm':'ss'Z'           2014-08-28 12:28:30Z
//    dddd, dd MMMM yyyy HH:mm:ss              Thursday, 28 August 2014 12:28:30
//    yyyy MMMM                                2014 August
//    yyyy MMMM                                2014 August
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim date1 As Date = #08/28/2014 12:28:30PM#
      Dim invDTF As New DateTimeFormatInfo()
      Dim formats() As String = invDTF.GetAllDateTimePatterns()

      Console.WriteLine("{0,-40} {1}", "Pattern", "Result String")
      Console.WriteLine()
      For Each fmt In formats
         Console.WriteLine("{0,-40} {1}", fmt, date1.ToString(fmt))
      Next
   End Sub
End Module
' The example displays the following output:
'    Pattern                                  Result String
'
'    MM/dd/yyyy                               08/28/2014
'    yyyy-MM-dd                               2014-08-28
'    dddd, dd MMMM yyyy                       Thursday, 28 August 2014
'    dddd, dd MMMM yyyy HH:mm                 Thursday, 28 August 2014 12:28
'    dddd, dd MMMM yyyy hh:mm tt              Thursday, 28 August 2014 12:28 PM
'    dddd, dd MMMM yyyy H:mm                  Thursday, 28 August 2014 12:28
'    dddd, dd MMMM yyyy h:mm tt               Thursday, 28 August 2014 12:28 PM
'    dddd, dd MMMM yyyy HH:mm:ss              Thursday, 28 August 2014 12:28:30
'    MM/dd/yyyy HH:mm                         08/28/2014 12:28
'    MM/dd/yyyy hh:mm tt                      08/28/2014 12:28 PM
'    MM/dd/yyyy H:mm                          08/28/2014 12:28
'    MM/dd/yyyy h:mm tt                       08/28/2014 12:28 PM
'    yyyy-MM-dd HH:mm                         2014-08-28 12:28
'    yyyy-MM-dd hh:mm tt                      2014-08-28 12:28 PM
'    yyyy-MM-dd H:mm                          2014-08-28 12:28
'    yyyy-MM-dd h:mm tt                       2014-08-28 12:28 PM
'    MM/dd/yyyy HH:mm:ss                      08/28/2014 12:28:30
'    yyyy-MM-dd HH:mm:ss                      2014-08-28 12:28:30
'    MMMM dd                                  August 28
'    MMMM dd                                  August 28
'    yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffffffK   2014-08-28T12:28:30.0000000
'    yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffffffK   2014-08-28T12:28:30.0000000
'    ddd, dd MMM yyyy HH':'mm':'ss 'GMT'      Thu, 28 Aug 2014 12:28:30 GMT
'    ddd, dd MMM yyyy HH':'mm':'ss 'GMT'      Thu, 28 Aug 2014 12:28:30 GMT
'    yyyy'-'MM'-'dd'T'HH':'mm':'ss            2014-08-28T12:28:30
'    HH:mm                                    12:28
'    hh:mm tt                                 12:28 PM
'    H:mm                                     12:28
'    h:mm tt                                  12:28 PM
'    HH:mm:ss                                 12:28:30
'    yyyy'-'MM'-'dd HH':'mm':'ss'Z'           2014-08-28 12:28:30Z
'    dddd, dd MMMM yyyy HH:mm:ss              Thursday, 28 August 2014 12:28:30
'    yyyy MMMM                                2014 August
'    yyyy MMMM                                2014 August

L’exemple instancie un DateTimeFormatInfo objet qui représente la culture invariante en appelant le DateTimeFormatInfo constructeur. Il peut également récupérer un DateTimeFormatInfo qui représente la culture invariante à partir de la InvariantInfo propriété .

Remarques

Cette méthode retourne un tableau qui contient toutes les chaînes de format personnalisées qui correspondent à des chaînes de format standard. Pour obtenir la liste des chaînes de format standard, consultez Chaînes de format de date et d’heure standard.

Vous pouvez utiliser les chaînes de format personnalisées dans le tableau retourné par la méthode dans les GetAllDateTimePatterns opérations de mise en forme. Toutefois, si vous le faites, la représentation sous forme de chaîne d’une valeur de date et d’heure retournée dans cette opération de mise en forme ne peut pas toujours être analysée correctement par les Parse méthodes et TryParse . Par conséquent, vous ne pouvez pas supposer que les chaînes de format personnalisées retournées par la GetAllDateTimePatterns méthode peuvent être utilisées pour des valeurs de date et d’heure aller-retour. L'exemple de code suivant illustre ce problème. Il récupère un DateTimeFormatInfo objet qui contient des informations de mise en forme pour la culture italienne. Elle transmet chaque chaîne de format personnalisée dans le tableau retournée par la GetAllDateTimePatterns() méthode à la DateTime.ToString(String) méthode pour créer la représentation sous forme de chaîne d’une date et d’une heure. Cet exemple tente ensuite d’analyser cette valeur en appelant la DateTime.TryParse(String, DateTime) méthode . Comme le montre la sortie de l’exemple, certaines chaînes de format personnalisées ne produisent pas de valeur de date et d’heure qui ont réussi à effectuer des allers-retours.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      CultureInfo culture = CultureInfo.CreateSpecificCulture("it-IT");
      DateTime date1 = new DateTime(2011, 02, 01, 7, 30, 45, 0);
      DateTime date2;
      int total = 0;
      int noRoundTrip = 0;

      foreach (var fmt in culture.DateTimeFormat.GetAllDateTimePatterns()) {
         total += 1;
         if (! DateTime.TryParse(date1.ToString(fmt), out date2)) {
            noRoundTrip++;
            Console.WriteLine("Unable to parse {0:" + fmt + "} (format '{1}')",
                              date1, fmt);
         }
      }
      Console.WriteLine("\nUnable to round-trip {0} of {1} format strings.",
                        noRoundTrip, total);
   }
}
// The example displays the following output:
//    Unable to parse Tuesday 1 February 2011 7.30 (format 'dddd d MMMM yyyy H.mm')
//    Unable to parse Tuesday 1 February 2011 07.30 (format 'dddd d MMMM yyyy HH.mm')
//    Unable to parse 1-Feb-11 7.30 (format 'd-MMM-yy H.mm')
//    Unable to parse 1-Feb-11 07.30 (format 'd-MMM-yy HH.mm')
//    Unable to parse 1 February 2011 7.30 (format 'd MMMM yyyy H.mm')
//    Unable to parse 1 February 2011 07.30 (format 'd MMMM yyyy HH.mm')
//    Unable to parse Tuesday 1 February 2011 7.30.45 (format 'dddd d MMMM yyyy H.mm.ss')
//    Unable to parse Tuesday 1 February 2011 07.30.45 (format 'dddd d MMMM yyyy HH.mm.ss')
//    Unable to parse 1-Feb-11 7.30.45 (format 'd-MMM-yy H.mm.ss')
//    Unable to parse 1-Feb-11 07.30.45 (format 'd-MMM-yy HH.mm.ss')
//    Unable to parse 1 February 2011 7.30.45 (format 'd MMMM yyyy H.mm.ss')
//    Unable to parse 1 February 2011 07.30.45 (format 'd MMMM yyyy HH.mm.ss')
//    Unable to parse 01/02/2011 7.30 (format 'dd/MM/yyyy H.mm')
//    Unable to parse 01/02/2011 07.30 (format 'dd/MM/yyyy HH.mm')
//    Unable to parse 01/Feb/2011 7.30 (format 'dd/MMM/yyyy H.mm')
//    Unable to parse 01/Feb/2011 07.30 (format 'dd/MMM/yyyy HH.mm')
//    Unable to parse 01/02/11 7.30 (format 'dd/MM/yy H.mm')
//    Unable to parse 01/02/11 07.30 (format 'dd/MM/yy HH.mm')
//    Unable to parse 01.2.11 7.30 (format 'dd.M.yy H.mm')
//    Unable to parse 01.2.11 07.30 (format 'dd.M.yy HH.mm')
//    Unable to parse 1/2/11 7.30 (format 'd/M/yy H.mm')
//    Unable to parse 1/2/11 07.30 (format 'd/M/yy HH.mm')
//    Unable to parse 2011-02-01 7.30 (format 'yyyy-MM-dd H.mm')
//    Unable to parse 2011-02-01 07.30 (format 'yyyy-MM-dd HH.mm')
//    Unable to parse 01/02/2011 7.30.45 (format 'dd/MM/yyyy H.mm.ss')
//    Unable to parse 01/02/2011 07.30.45 (format 'dd/MM/yyyy HH.mm.ss')
//    Unable to parse 01/Feb/2011 7.30.45 (format 'dd/MMM/yyyy H.mm.ss')
//    Unable to parse 01/Feb/2011 07.30.45 (format 'dd/MMM/yyyy HH.mm.ss')
//    Unable to parse 01/02/11 7.30.45 (format 'dd/MM/yy H.mm.ss')
//    Unable to parse 01/02/11 07.30.45 (format 'dd/MM/yy HH.mm.ss')
//    Unable to parse 01.2.11 7.30.45 (format 'dd.M.yy H.mm.ss')
//    Unable to parse 01.2.11 07.30.45 (format 'dd.M.yy HH.mm.ss')
//    Unable to parse 1/2/11 7.30.45 (format 'd/M/yy H.mm.ss')
//    Unable to parse 1/2/11 07.30.45 (format 'd/M/yy HH.mm.ss')
//    Unable to parse 2011-02-01 7.30.45 (format 'yyyy-MM-dd H.mm.ss')
//    Unable to parse 2011-02-01 07.30.45 (format 'yyyy-MM-dd HH.mm.ss')
//    Unable to parse Tuesday 1 February 2011 7.30.45 (format 'dddd d MMMM yyyy H.mm.ss')
//    Unable to parse Tuesday 1 February 2011 07.30.45 (format 'dddd d MMMM yyyy HH.mm.ss')
//    Unable to parse 1-Feb-11 7.30.45 (format 'd-MMM-yy H.mm.ss')
//    Unable to parse 1-Feb-11 07.30.45 (format 'd-MMM-yy HH.mm.ss')
//    Unable to parse 1 February 2011 7.30.45 (format 'd MMMM yyyy H.mm.ss')
//    Unable to parse 1 February 2011 07.30.45 (format 'd MMMM yyyy HH.mm.ss')
//
//    Unable to round-trip 42 of 98 format strings.
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim culture As CultureInfo = CultureInfo.CreateSpecificCulture("it-IT")
      Dim date1 = New DateTime(2011, 02, 01, 7, 30, 45, 0)
      Dim date2 As DateTime
      Dim total, noRoundTrip As Integer
      
      For Each fmt In culture.DateTimeFormat.GetAllDateTimePatterns()
         total += 1
         If Not DateTime.TryParse(date1.ToString(fmt), date2)
            noRoundTrip += 1
            Console.WriteLine("Unable to parse {0:" + fmt + "} (format '{1}')", 
                              date1, fmt)
         End If             
      Next
      Console.WriteLine()
      Console.WriteLine("Unable to round-trip {0} of {1} format strings.",
                        noRoundTrip, total)
   End Sub
End Module
' The example displays the following output:
'    Unable to parse Tuesday 1 February 2011 7.30 (format 'dddd d MMMM yyyy H.mm')
'    Unable to parse Tuesday 1 February 2011 07.30 (format 'dddd d MMMM yyyy HH.mm')
'    Unable to parse 1-Feb-11 7.30 (format 'd-MMM-yy H.mm')
'    Unable to parse 1-Feb-11 07.30 (format 'd-MMM-yy HH.mm')
'    Unable to parse 1 February 2011 7.30 (format 'd MMMM yyyy H.mm')
'    Unable to parse 1 February 2011 07.30 (format 'd MMMM yyyy HH.mm')
'    Unable to parse Tuesday 1 February 2011 7.30.45 (format 'dddd d MMMM yyyy H.mm.ss')
'    Unable to parse Tuesday 1 February 2011 07.30.45 (format 'dddd d MMMM yyyy HH.mm.ss')
'    Unable to parse 1-Feb-11 7.30.45 (format 'd-MMM-yy H.mm.ss')
'    Unable to parse 1-Feb-11 07.30.45 (format 'd-MMM-yy HH.mm.ss')
'    Unable to parse 1 February 2011 7.30.45 (format 'd MMMM yyyy H.mm.ss')
'    Unable to parse 1 February 2011 07.30.45 (format 'd MMMM yyyy HH.mm.ss')
'    Unable to parse 01/02/2011 7.30 (format 'dd/MM/yyyy H.mm')
'    Unable to parse 01/02/2011 07.30 (format 'dd/MM/yyyy HH.mm')
'    Unable to parse 01/Feb/2011 7.30 (format 'dd/MMM/yyyy H.mm')
'    Unable to parse 01/Feb/2011 07.30 (format 'dd/MMM/yyyy HH.mm')
'    Unable to parse 01/02/11 7.30 (format 'dd/MM/yy H.mm')
'    Unable to parse 01/02/11 07.30 (format 'dd/MM/yy HH.mm')
'    Unable to parse 01.2.11 7.30 (format 'dd.M.yy H.mm')
'    Unable to parse 01.2.11 07.30 (format 'dd.M.yy HH.mm')
'    Unable to parse 1/2/11 7.30 (format 'd/M/yy H.mm')
'    Unable to parse 1/2/11 07.30 (format 'd/M/yy HH.mm')
'    Unable to parse 2011-02-01 7.30 (format 'yyyy-MM-dd H.mm')
'    Unable to parse 2011-02-01 07.30 (format 'yyyy-MM-dd HH.mm')
'    Unable to parse 01/02/2011 7.30.45 (format 'dd/MM/yyyy H.mm.ss')
'    Unable to parse 01/02/2011 07.30.45 (format 'dd/MM/yyyy HH.mm.ss')
'    Unable to parse 01/Feb/2011 7.30.45 (format 'dd/MMM/yyyy H.mm.ss')
'    Unable to parse 01/Feb/2011 07.30.45 (format 'dd/MMM/yyyy HH.mm.ss')
'    Unable to parse 01/02/11 7.30.45 (format 'dd/MM/yy H.mm.ss')
'    Unable to parse 01/02/11 07.30.45 (format 'dd/MM/yy HH.mm.ss')
'    Unable to parse 01.2.11 7.30.45 (format 'dd.M.yy H.mm.ss')
'    Unable to parse 01.2.11 07.30.45 (format 'dd.M.yy HH.mm.ss')
'    Unable to parse 1/2/11 7.30.45 (format 'd/M/yy H.mm.ss')
'    Unable to parse 1/2/11 07.30.45 (format 'd/M/yy HH.mm.ss')
'    Unable to parse 2011-02-01 7.30.45 (format 'yyyy-MM-dd H.mm.ss')
'    Unable to parse 2011-02-01 07.30.45 (format 'yyyy-MM-dd HH.mm.ss')
'    Unable to parse Tuesday 1 February 2011 7.30.45 (format 'dddd d MMMM yyyy H.mm.ss')
'    Unable to parse Tuesday 1 February 2011 07.30.45 (format 'dddd d MMMM yyyy HH.mm.ss')
'    Unable to parse 1-Feb-11 7.30.45 (format 'd-MMM-yy H.mm.ss')
'    Unable to parse 1-Feb-11 07.30.45 (format 'd-MMM-yy HH.mm.ss')
'    Unable to parse 1 February 2011 7.30.45 (format 'd MMMM yyyy H.mm.ss')
'    Unable to parse 1 February 2011 07.30.45 (format 'd MMMM yyyy HH.mm.ss')
'    
'    Unable to round-trip 42 of 98 format strings.

Pour analyser la représentation sous forme de chaîne d’une date et d’une heure qui peuvent être exprimées dans un certain nombre de formats personnalisés prédéfinis, appelez l’une des méthodes suivantes :

Les chaînes de format personnalisées dans le tableau retournées par la GetAllDateTimePatterns méthode dépendent du calendrier actuel de la culture pour laquelle l’objet DateTimeFormatInfo fournit des informations de mise en forme. Si le calendrier change, le tableau retourné par cette méthode change également.

Voir aussi

S’applique à

GetAllDateTimePatterns(Char)

Source:
DateTimeFormatInfo.cs
Source:
DateTimeFormatInfo.cs
Source:
DateTimeFormatInfo.cs

Retourne tous les modèles dans lesquels les valeurs de date et d’heure peuvent être mises en forme en utilisant la chaîne de format standard.

public:
 cli::array <System::String ^> ^ GetAllDateTimePatterns(char format);
public string[] GetAllDateTimePatterns (char format);
member this.GetAllDateTimePatterns : char -> string[]
Public Function GetAllDateTimePatterns (format As Char) As String()

Paramètres

format
Char

Chaîne de format standard.

Retours

String[]

Tableau contenant les modèles standard selon lesquels les valeurs de date et d’heure peuvent être appliquées aux valeurs en utilisant la chaîne de format spécifiée.

Exceptions

format n’est pas une chaîne de format standard valide.

Exemples

L’exemple suivant montre comment afficher les modèles de date et d’heure du calendrier actuel.

#using <System.dll>

using namespace System;
using namespace System::Globalization;
public ref class SamplesDateTimeFormatInfo
{
public:
   static void Main()
   {
      
      // Creates a new DateTimeFormatinfo.
      DateTimeFormatInfo^ myDtfi = gcnew DateTimeFormatInfo;
      
      // Gets and prints all the patterns
      array<String^>^myPatternsArray = myDtfi->GetAllDateTimePatterns();
      Console::WriteLine(  "ALL the patterns:" );
      PrintIndexAndValues( myPatternsArray );
      
      // Gets and prints the pattern(s) associated with some of the format characters.
      myPatternsArray = myDtfi->GetAllDateTimePatterns( 'd' );
      Console::WriteLine(  "The patterns for 'd':" );
      PrintIndexAndValues( myPatternsArray );
      myPatternsArray = myDtfi->GetAllDateTimePatterns( 'D' );
      Console::WriteLine(  "The patterns for 'D':" );
      PrintIndexAndValues( myPatternsArray );
      myPatternsArray = myDtfi->GetAllDateTimePatterns( 'f' );
      Console::WriteLine(  "The patterns for 'f':" );
      PrintIndexAndValues( myPatternsArray );
      myPatternsArray = myDtfi->GetAllDateTimePatterns( 'F' );
      Console::WriteLine(  "The patterns for 'F':" );
      PrintIndexAndValues( myPatternsArray );
      myPatternsArray = myDtfi->GetAllDateTimePatterns( 'r' );
      Console::WriteLine(  "The patterns for 'r':" );
      PrintIndexAndValues( myPatternsArray );
      myPatternsArray = myDtfi->GetAllDateTimePatterns( 'R' );
      Console::WriteLine(  "The patterns for 'R':" );
      PrintIndexAndValues( myPatternsArray );
   }

    public:
       static void PrintIndexAndValues( array<String^>^myArray )  {
       int i = 0;
       for each ( String^ s in myArray )
           Console::WriteLine( "\t[{0}]:\t{1}", i++, s );
       Console::WriteLine();
    }
};

int main()
{
   SamplesDateTimeFormatInfo::Main();
}

/* 
This code produces the following output.

ALL the patterns:
        [0]:    MM/dd/yyyy
        [1]:    dddd, dd MMMM yyyy
        [2]:    dddd, dd MMMM yyyy HH:mm
        [3]:    dddd, dd MMMM yyyy hh:mm tt
        [4]:    dddd, dd MMMM yyyy H:mm
        [5]:    dddd, dd MMMM yyyy h:mm tt
        [6]:    dddd, dd MMMM yyyy HH:mm:ss
        [7]:    MM/dd/yyyy HH:mm
        [8]:    MM/dd/yyyy hh:mm tt
        [9]:    MM/dd/yyyy H:mm
        [10]:   MM/dd/yyyy h:mm tt
        [11]:   MM/dd/yyyy HH:mm:ss
        [12]:   MMMM dd
        [13]:   MMMM dd
        [14]:   ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
        [15]:   ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
        [16]:   yyyy'-'MM'-'dd'T'HH':'mm':'ss
        [17]:   HH:mm
        [18]:   hh:mm tt
        [19]:   H:mm
        [20]:   h:mm tt
        [21]:   HH:mm:ss
        [22]:   yyyy'-'MM'-'dd HH':'mm':'ss'Z'
        [23]:   dddd, dd MMMM yyyy HH:mm:ss
        [24]:   yyyy MMMM
        [25]:   yyyy MMMM

The patterns for 'd':
        [0]:    MM/dd/yyyy

The patterns for 'D':
        [0]:    dddd, dd MMMM yyyy

The patterns for 'f':
        [0]:    dddd, dd MMMM yyyy HH:mm
        [1]:    dddd, dd MMMM yyyy hh:mm tt
        [2]:    dddd, dd MMMM yyyy H:mm
        [3]:    dddd, dd MMMM yyyy h:mm tt

The patterns for 'F':
        [0]:    dddd, dd MMMM yyyy HH:mm:ss

The patterns for 'r':
        [0]:    ddd, dd MMM yyyy HH':'mm':'ss 'GMT'

The patterns for 'R':
        [0]:    ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
*/
 using System;
 using System.Globalization;
 public class SamplesDateTimeFormatInfo  {

    public static void Main()  {

       // Creates a new DateTimeFormatinfo.
       DateTimeFormatInfo myDtfi = new DateTimeFormatInfo();

       // Gets and prints all the patterns.
       String[] myPatternsArray = myDtfi.GetAllDateTimePatterns();
       Console.WriteLine( "ALL the patterns:" );
       PrintIndexAndValues( myPatternsArray );

       // Gets and prints the pattern(s) associated with some of the format characters.
       myPatternsArray = myDtfi.GetAllDateTimePatterns('d');
       Console.WriteLine( "The patterns for 'd':" );
       PrintIndexAndValues( myPatternsArray );

       myPatternsArray = myDtfi.GetAllDateTimePatterns('D');
       Console.WriteLine( "The patterns for 'D':" );
       PrintIndexAndValues( myPatternsArray );

       myPatternsArray = myDtfi.GetAllDateTimePatterns('f');
       Console.WriteLine( "The patterns for 'f':" );
       PrintIndexAndValues( myPatternsArray );

       myPatternsArray = myDtfi.GetAllDateTimePatterns('F');
       Console.WriteLine( "The patterns for 'F':" );
       PrintIndexAndValues( myPatternsArray );

       myPatternsArray = myDtfi.GetAllDateTimePatterns('r');
       Console.WriteLine( "The patterns for 'r':" );
       PrintIndexAndValues( myPatternsArray );

       myPatternsArray = myDtfi.GetAllDateTimePatterns('R');
       Console.WriteLine( "The patterns for 'R':" );
       PrintIndexAndValues( myPatternsArray );
    }

    public static void PrintIndexAndValues( String[] myArray )  {
       int i = 0;
       foreach ( string s in myArray )
          Console.WriteLine( "\t[{0}]:\t{1}", i++, s );
       Console.WriteLine();
    }
 }


/*
This code produces the following output.

ALL the patterns:
        [0]:    MM/dd/yyyy
        [1]:    dddd, dd MMMM yyyy
        [2]:    dddd, dd MMMM yyyy HH:mm
        [3]:    dddd, dd MMMM yyyy hh:mm tt
        [4]:    dddd, dd MMMM yyyy H:mm
        [5]:    dddd, dd MMMM yyyy h:mm tt
        [6]:    dddd, dd MMMM yyyy HH:mm:ss
        [7]:    MM/dd/yyyy HH:mm
        [8]:    MM/dd/yyyy hh:mm tt
        [9]:    MM/dd/yyyy H:mm
        [10]:   MM/dd/yyyy h:mm tt
        [11]:   MM/dd/yyyy HH:mm:ss
        [12]:   MMMM dd
        [13]:   MMMM dd
        [14]:   ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
        [15]:   ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
        [16]:   yyyy'-'MM'-'dd'T'HH':'mm':'ss
        [17]:   HH:mm
        [18]:   hh:mm tt
        [19]:   H:mm
        [20]:   h:mm tt
        [21]:   HH:mm:ss
        [22]:   yyyy'-'MM'-'dd HH':'mm':'ss'Z'
        [23]:   dddd, dd MMMM yyyy HH:mm:ss
        [24]:   yyyy MMMM
        [25]:   yyyy MMMM

The patterns for 'd':
        [0]:    MM/dd/yyyy

The patterns for 'D':
        [0]:    dddd, dd MMMM yyyy

The patterns for 'f':
        [0]:    dddd, dd MMMM yyyy HH:mm
        [1]:    dddd, dd MMMM yyyy hh:mm tt
        [2]:    dddd, dd MMMM yyyy H:mm
        [3]:    dddd, dd MMMM yyyy h:mm tt

The patterns for 'F':
        [0]:    dddd, dd MMMM yyyy HH:mm:ss

The patterns for 'r':
        [0]:    ddd, dd MMM yyyy HH':'mm':'ss 'GMT'

The patterns for 'R':
        [0]:    ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
*/
Imports System.Globalization

Public Class SamplesDateTimeFormatInfo    
    
    Public Shared Sub Main()
        
        ' Creates a new DateTimeFormatinfo.
        Dim myDtfi As New DateTimeFormatInfo()
        
        ' Gets and prints all the patterns.
        Dim myPatternsArray As String() = myDtfi.GetAllDateTimePatterns()
        Console.WriteLine("ALL the patterns:")
        PrintIndexAndValues(myPatternsArray)
        
        ' Gets and prints the pattern(s) associated with some of the format characters.
        myPatternsArray = myDtfi.GetAllDateTimePatterns("d"c)
        Console.WriteLine("The patterns for 'd':")
        PrintIndexAndValues(myPatternsArray)
        
        myPatternsArray = myDtfi.GetAllDateTimePatterns("D"c)
        Console.WriteLine("The patterns for 'D':")
        PrintIndexAndValues(myPatternsArray)
        
        myPatternsArray = myDtfi.GetAllDateTimePatterns("f"c)
        Console.WriteLine("The patterns for 'f':")
        PrintIndexAndValues(myPatternsArray)
        
        myPatternsArray = myDtfi.GetAllDateTimePatterns("F"c)
        Console.WriteLine("The patterns for 'F':")
        PrintIndexAndValues(myPatternsArray)
        
        myPatternsArray = myDtfi.GetAllDateTimePatterns("r"c)
        Console.WriteLine("The patterns for 'r':")
        PrintIndexAndValues(myPatternsArray)
        
        myPatternsArray = myDtfi.GetAllDateTimePatterns("R"c)
        Console.WriteLine("The patterns for 'R':")
        PrintIndexAndValues(myPatternsArray)
    End Sub
    
    
    Public Shared Sub PrintIndexAndValues(myArray() As String)
        Dim i As Integer = 0
        Dim s As String
        For Each s In  myArray
            Console.WriteLine(ControlChars.Tab + "[{0}]:" + ControlChars.Tab _
               + "{1}", i, s)
            i += 1
        Next s
        Console.WriteLine()
    End Sub
End Class


' This code produces the following output.
'
' ALL the patterns:
' 	[0]:	MM/dd/yyyy
' 	[1]:	dddd, dd MMMM yyyy
' 	[2]:	dddd, dd MMMM yyyy HH:mm
' 	[3]:	dddd, dd MMMM yyyy hh:mm tt
' 	[4]:	dddd, dd MMMM yyyy H:mm
' 	[5]:	dddd, dd MMMM yyyy h:mm tt
' 	[6]:	dddd, dd MMMM yyyy HH:mm:ss
' 	[7]:	MM/dd/yyyy HH:mm
' 	[8]:	MM/dd/yyyy hh:mm tt
' 	[9]:	MM/dd/yyyy H:mm
' 	[10]:	MM/dd/yyyy h:mm tt
' 	[11]:	MM/dd/yyyy HH:mm:ss
' 	[12]:	MMMM dd
' 	[13]:	MMMM dd
' 	[14]:	ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
' 	[15]:	ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
' 	[16]:	yyyy'-'MM'-'dd'T'HH':'mm':'ss
' 	[17]:	HH:mm
' 	[18]:	hh:mm tt
' 	[19]:	H:mm
' 	[20]:	h:mm tt
' 	[21]:	HH:mm:ss
' 	[22]:	yyyy'-'MM'-'dd HH':'mm':'ss'Z'
' 	[23]:	dddd, dd MMMM yyyy HH:mm:ss
' 	[24]:	yyyy MMMM
' 	[25]:	yyyy MMMM
' 
' The patterns for 'd':
' 	[0]:	MM/dd/yyyy
' 
' The patterns for 'D':
' 	[0]:	dddd, dd MMMM yyyy
' 
' The patterns for 'f':
' 	[0]:	dddd, dd MMMM yyyy HH:mm
' 	[1]:	dddd, dd MMMM yyyy hh:mm tt
' 	[2]:	dddd, dd MMMM yyyy H:mm
' 	[3]:	dddd, dd MMMM yyyy h:mm tt
' 
' The patterns for 'F':
' 	[0]:	dddd, dd MMMM yyyy HH:mm:ss
' 
' The patterns for 'r':
' 	[0]:	ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
' 
' The patterns for 'R':
' 	[0]:	ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
'

Remarques

Cette méthode retourne un tableau contenant les chaînes de format personnalisées qui correspondent à une chaîne de format standard particulière. Pour obtenir la liste des chaînes de format standard, consultez Chaînes de format de date et d’heure standard.

Vous pouvez utiliser les chaînes de format personnalisées dans le tableau retourné par la méthode dans les GetAllDateTimePatterns opérations de mise en forme. Toutefois, si vous le faites, la représentation sous forme de chaîne d’une valeur de date et d’heure retournée dans cette opération de mise en forme ne peut pas toujours être analysée correctement par les Parse méthodes et TryParse . Par conséquent, vous ne pouvez pas supposer que les chaînes de format personnalisées retournées par la GetAllDateTimePatterns méthode peuvent être utilisées pour des valeurs de date et d’heure aller-retour. L'exemple de code suivant illustre ce problème. Il récupère un DateTimeFormatInfo objet qui contient des informations de mise en forme pour la culture russe. Il appelle la GetAllDateTimePatterns(Char) méthode pour chaque chaîne de format standard, puis transmet chaque chaîne de format personnalisée dans le tableau retourné à la DateTime.ToString(String) méthode pour créer la représentation sous forme de chaîne d’une date et d’une heure. Cet exemple tente ensuite d’analyser cette valeur en appelant la DateTime.TryParse(String, DateTime) méthode . Comme le montre la sortie de l’exemple, certaines chaînes de format personnalisées ne produisent pas de valeur de date et d’heure qui ont réussi à effectuer des allers-retours.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      CultureInfo culture = CultureInfo.CreateSpecificCulture("ru-RU");
      char[] formats = { 'd', 'D', 'f', 'F', 'g', 'G', 'm', 'o',
                           'r', 's', 't', 'T', 'u', 'U', 'y' };
      DateTime date1 = new DateTime(2011, 02, 01, 7, 30, 45, 0);
      DateTime date2;
      int total = 0;
      int noRoundTrip = 0;

      foreach (var fmt in formats) {
         total = 0;
         noRoundTrip = 0;
         foreach (var pattern in culture.DateTimeFormat.GetAllDateTimePatterns(fmt)) {
            total++;
            if (! DateTime.TryParse(date1.ToString(pattern), out date2)) {
               noRoundTrip++;
               Console.WriteLine("Unable to parse {0:" + pattern + "} (format '{1}')",
                                 date1, pattern);
            }
         }
         if (noRoundTrip > 0)
            Console.WriteLine("{0}: Unable to round-trip {1} of {2} format strings.\n",
                              fmt, noRoundTrip, total);
         else
            Console.WriteLine("{0}: All custom format strings round trip.\n", fmt);
      }
   }
}
// The example displays the following output:
//    d: All custom format strings round trip.
//
//    Unable to parse 1 February 2011 г. (format 'd MMMM yyyy 'г.'')
//    Unable to parse 01 February 2011 г. (format 'dd MMMM yyyy 'г.'')
//    D: Unable to round-trip 2 of 2 format strings.
//
//    Unable to parse 1 February 2011 г. 7:30 (format 'd MMMM yyyy 'г.' H:mm')
//    Unable to parse 1 February 2011 г. 07:30 (format 'd MMMM yyyy 'г.' HH:mm')
//    Unable to parse 01 February 2011 г. 7:30 (format 'dd MMMM yyyy 'г.' H:mm')
//    Unable to parse 01 February 2011 г. 07:30 (format 'dd MMMM yyyy 'г.' HH:mm')
//    f: Unable to round-trip 4 of 4 format strings.
//
//    Unable to parse 1 February 2011 г. 7:30:45 (format 'd MMMM yyyy 'г.' H:mm:ss')
//    Unable to parse 1 February 2011 г. 07:30:45 (format 'd MMMM yyyy 'г.' HH:mm:ss')
//    Unable to parse 01 February 2011 г. 7:30:45 (format 'dd MMMM yyyy 'г.' H:mm:ss')
//    Unable to parse 01 February 2011 г. 07:30:45 (format 'dd MMMM yyyy 'г.' HH:mm:ss')
//    F: Unable to round-trip 4 of 4 format strings.
//
//    g: All custom format strings round trip.
//
//    G: All custom format strings round trip.
//
//    m: All custom format strings round trip.
//
//    o: All custom format strings round trip.
//
//    r: All custom format strings round trip.
//
//    s: All custom format strings round trip.
//
//    t: All custom format strings round trip.
//
//    T: All custom format strings round trip.
//
//    u: All custom format strings round trip.
//
//    Unable to parse 1 February 2011 г. 7:30:45 (format 'd MMMM yyyy 'г.' H:mm:ss')
//    Unable to parse 1 February 2011 г. 07:30:45 (format 'd MMMM yyyy 'г.' HH:mm:ss')
//    Unable to parse 01 February 2011 г. 7:30:45 (format 'dd MMMM yyyy 'г.' H:mm:ss')
//    Unable to parse 01 February 2011 г. 07:30:45 (format 'dd MMMM yyyy 'г.' HH:mm:ss')
//    U: Unable to round-trip 4 of 4 format strings.
//
//    y: All custom format strings round trip.
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim culture As CultureInfo = CultureInfo.CreateSpecificCulture("ru-RU")
      Dim formats() As String = { "d", "D", "f", "F", "g", "G", "m",
                                  "o", "r", "s", "t", "T", "u", "U", "y" }
      Dim date1 = New DateTime(2011, 02, 01, 7, 30, 45, 0)
      Dim date2 As DateTime
      Dim total, noRoundTrip As Integer

      For Each fmt In formats
         total = 0 : noRoundTrip = 0
         For Each pattern In culture.DateTimeFormat.GetAllDateTimePatterns(CChar(fmt))
            total += 1
            If Not DateTime.TryParse(date1.ToString(pattern), date2)
               noRoundTrip += 1
               Console.WriteLine("Unable to parse {0:" + pattern + "} (format '{1}')", 
                                 date1, pattern)
            End If             
         Next
         If noRoundTrip > 0 Then
            Console.WriteLine("{0}: Unable to round-trip {1} of {2} format strings.",
                              fmt, noRoundTrip, total)
            Console.WriteLine()
         Else
            Console.WriteLine("{0}: All custom format strings round trip.", fmt)
            Console.WriteLine()
         End If
      Next
   End Sub
End Module
' The example displays the following output:
'    d: All custom format strings round trip.
'    
'    Unable to parse 1 February 2011 г. (format 'd MMMM yyyy 'г.'')
'    Unable to parse 01 February 2011 г. (format 'dd MMMM yyyy 'г.'')
'    D: Unable to round-trip 2 of 2 format strings.
'    
'    Unable to parse 1 February 2011 г. 7:30 (format 'd MMMM yyyy 'г.' H:mm')
'    Unable to parse 1 February 2011 г. 07:30 (format 'd MMMM yyyy 'г.' HH:mm')
'    Unable to parse 01 February 2011 г. 7:30 (format 'dd MMMM yyyy 'г.' H:mm')
'    Unable to parse 01 February 2011 г. 07:30 (format 'dd MMMM yyyy 'г.' HH:mm')
'    f: Unable to round-trip 4 of 4 format strings.
'    
'    Unable to parse 1 February 2011 г. 7:30:45 (format 'd MMMM yyyy 'г.' H:mm:ss')
'    Unable to parse 1 February 2011 г. 07:30:45 (format 'd MMMM yyyy 'г.' HH:mm:ss')
'    Unable to parse 01 February 2011 г. 7:30:45 (format 'dd MMMM yyyy 'г.' H:mm:ss')
'    Unable to parse 01 February 2011 г. 07:30:45 (format 'dd MMMM yyyy 'г.' HH:mm:ss')
'    F: Unable to round-trip 4 of 4 format strings.
'    
'    g: All custom format strings round trip.
'    
'    G: All custom format strings round trip.
'    
'    m: All custom format strings round trip.
'    
'    o: All custom format strings round trip.
'    
'    r: All custom format strings round trip.
'    
'    s: All custom format strings round trip.
'    
'    t: All custom format strings round trip.
'    
'    T: All custom format strings round trip.
'    
'    u: All custom format strings round trip.
'    
'    Unable to parse 1 February 2011 г. 7:30:45 (format 'd MMMM yyyy 'г.' H:mm:ss')
'    Unable to parse 1 February 2011 г. 07:30:45 (format 'd MMMM yyyy 'г.' HH:mm:ss')
'    Unable to parse 01 February 2011 г. 7:30:45 (format 'dd MMMM yyyy 'г.' H:mm:ss')
'    Unable to parse 01 February 2011 г. 07:30:45 (format 'dd MMMM yyyy 'г.' HH:mm:ss')
'    U: Unable to round-trip 4 of 4 format strings.
'    
'    y: All custom format strings round trip.

Pour analyser la représentation sous forme de chaîne d’une date et d’une heure qui peuvent être exprimées dans un certain nombre de formats personnalisés prédéfinis, appelez l’une des méthodes suivantes :

Les chaînes de format personnalisées dans le tableau retournées par la GetAllDateTimePatterns méthode dépendent du calendrier actuel de la culture pour laquelle l’objet DateTimeFormatInfo fournit des informations de mise en forme. Si le calendrier change, le tableau retourné par cette méthode change également.

Voir aussi

S’applique à