116 votes

Comment obtenir la date du jour en C# au format mm/dd/yyyy ?

Comment obtenir la date du jour en C# au format mm/dd/yyyy ?

J'ai besoin de définir une variable de type chaîne à la date du jour (de préférence sans l'année), mais il doit y avoir un meilleur moyen que de construire le mois/jour un morceau à la fois.

BTW : Je suis aux Etats-Unis, donc M/dd serait correct, par exemple le 11 septembre est le 9/11.

Note : une réponse de kronoz est arrivée, qui traitait de l'internationalisation, et j'ai pensé qu'elle était assez géniale pour être mentionnée, puisque je ne peux pas en faire une réponse "acceptée".

La réponse de kronoz

4 votes

M/dd indiquerait le 1er janvier comme 1/01. Voulez-vous 1/01 ou seulement 1/1 ?

228voto

Joel Coehoorn Points 190579
DateTime.Now.ToString("M/d/yyyy");

http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

3 votes

Hh:mm:ss donne l'heure. DateTime.Now.ToString("M/d/yyyy hh:mm:ss") ;

23voto

ljs Points 16511

Je ne veux pas être horriblement pédant, mais si vous internationalisez le code, il pourrait être plus utile d'avoir la possibilité d'obtenir la date courte pour une culture donnée, par exemple :-.

using System.Globalization;
using System.Threading;

...

var currentCulture = Thread.CurrentThread.CurrentCulture;
try {
  Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-us");
  string shortDateString = DateTime.Now.ToShortDateString();
  // Do something with shortDateString...
} finally {
  Thread.CurrentThread.CurrentCulture = currentCulture;
}

Bien qu'il soit évident que l'approche "m/dd/yyyy" est considérablement plus propre !

17voto

Corin Blaikie Points 6223
DateTime.Now.ToString("dd/MM/yyyy");

9voto

FlySwat Points 61945

Si vous le voulez sans l'année :

DateTime.Now.ToString("MM/DD");

DateTime.ToString() possède un grand nombre de chaînes de format intéressantes :

http://msdn.microsoft.com/en-us/library/aa326721.aspx

9voto

Corin Blaikie Points 6223
DateTime.Now.Date.ToShortDateString()

est spécifique à une culture.

Il est préférable de s'en tenir à cela :

DateTime.Now.ToString("d/MM/yyyy");

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X