web-dev-qa-db-fra.com

Comment ajouter des chaînes littérales au format DateTime?

Est-il possible d'ajouter le mot "à" entre un format de date et d'heure? J'ai essayé de l'ajouter comme ceci "jjjj, d MMM, aaaa à HH: mm" mais la webapp la transforme en "aA" ou "aP" selon la configuration régionale CA ou AU

Console.WriteLine(DateTime.Now.ToString("dddd, d MMM, yyyy at HH:mm"));

J'ai oublié de dire. Je dois être comme une chaîne de format et sans fonctions complexes ou concat.

37
Maximus Decimus

Oui, vous devez échapper à la Parole en la mettant dans ' Des marques dddd, d MMM, yyyy 'at' HH:mm

formatage de chaîne DateTime personnalisé

83
Darren Kopp
Console.WriteLine(DateTime.Now.ToString("dddd, d MMM, yyyy 'at' HH:mm"));

Les autres réponses sont bien meilleures, mais:

var now = DateTime.Now;

var str = now.ToString("d MMM yyyy") + " at " + now.ToString("HH:mm");

ou plus proche de votre mise en forme:

var str = now.ToString("dddd, d MMM, yyyy") + " at " + now.ToString("HH:mm");
2
DaveDev

Amélioration de la réponse @DaveDev à l'aide de l'interpolation de chaînes de C # 6

var now = DateTime.Now;
Console.WriteLine($"{now:dddd, d MMM, yyyy} at {now:HH:mm}");
2
asakura89