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