Conversion d'une date en chaîne de caractères

C#:
Conversion d'une date en chaîne de caractères

How to:

using System;
using System.Globalization;

public class DateToStringExample
{
    public static void Main()
    {
        DateTime now = DateTime.Now;
        // Formatage simple
        Console.WriteLine(now.ToString("dd-MM-yyyy")); // Exemple de sortie : 06-04-2023
        
        // Formatage avec nom du jour
        Console.WriteLine(now.ToString("dddd, dd MMMM yyyy")); // Exemple de sortie : jeudi, 06 avril 2023
        
        // Formatage ISO 8601
        Console.WriteLine(now.ToString("yyyy-MM-ddTHH:mm:ssK")); // Exemple de sortie : 2023-04-06T14:03:57+02:00
    }
}

Deep Dive

La conversion de dates en chaînes de caractères est un concept ancien en programmation. En C#, DateTime.ToString() a toujours été le moyen privilégié. Cependant, la méthode a évolué pour supporter plus de formats comme DateTimeOffset pour les fuseaux horaires. La méthode ToString() peut utiliser des formats standard ou personnalisés. Il existe d’autres bibliothèques telles que NodaTime offrant plus de contrôle sur les dates et heures.

Côté implémentation, la classe DateTime utilise DateTimeFormatInfo issu de System.Globalization. Cela permet d’adapter le formatage aux conventions locales. Par exemple, CultureInfo permet de formater la date pour un public français :

Console.WriteLine(now.ToString("f", CultureInfo.CreateSpecificCulture("fr-FR"))); // Exemple de sortie : jeudi 6 avril 2023 14:03

See Also