7
votes

DateTime.Tostring Formatage

J'affiche des dates courtes localisées en fournissant des informations de culture à DateTime.Tostring code> méthode. J'utilisais maintenant

x.ToString("ddd d", ci); // pon 23


0 commentaires

5 Réponses :


0
votes

Jetez un coup d'œil à cette explication:

http: //www.cshaarp -examples.net/string-format-datetime/ p>

Peut-être que vous pouvez trouver quelques exemples là-bas. p>

update strong> p> comme réponse au commentaire, l'exemple 3 dans le premier codeBlock indique clairement comment faire cela: P>

String.Format("{0:d dd ddd dddd}", dt);  // "9 09 Sun Sunday" day


5 commentaires

La copie / colle du premier résultat de Google n'est pas pratique. Ne pensez pas que cela méritait un bowvote pour cela. La réponse n'est pas incorrecte ou manque les questions.


Je pense que vous manquez le point, la question est de savoir comment afficher «DDD» suivie de la date limite complète en format spécifique à la culture. Votre échantillon de code ne fait pas cela.


La réponse mise à jour donne une réponse complètement incorrecte. Il est même commenté avec un exemple de sortie qui est clairement faux. Pas un exemple unique dans le lien donné répond à la question non plus. La réponse est à la fois incorrecte et manque la question.


Mes excuses .. Je manquais légèrement le point. Désolé d'être un peu triggerhappy ici.


Comme les autres ont déjà mentionné. Je sais que je peux formater les dates manuellement, mais ce n'est pas ce que je voulais faire. Merci quand même.



1
votes
x.ToString("ddd ", ci) + x.ToString("d", ci);

1 commentaires

Ouais. C'est ce que j'ai fait avant d'avoir une bonne réponse ici.



0
votes

Si rien d'autre, vous pouvez: x.tostring ("ddd", CI) + "" + x.tostring ("D", CI) ; ;


0 commentaires

9
votes

Que diriez-vous:

string.Format(ci, "{0:ddd} {0:d}", x)


4 commentaires

Nope, cela ne fonctionnerait pas comme cela reviendrait, pour citer Robert "Pon 23" au lieu de "Pon 23.12.2000"


@Manatherin, non, cela aurait exactement le même problème que l'exemple de la question initiale. Je préfère mon approche, mais Kristoffer résout le problème de manière succincte.


Ah bon point, lisez le tableau méchant et ce si c'était ce qu'il voulait non ce qu'il avait pour le moment


Merci@kristoffer. C'est plutôt intelligent. Je ne sais pas pourquoi je n'y ai pas pensé moi-même.



4
votes

Les chaînes de formatage "standard" fonctionnent en obtenant la propriété équivalente du CultureInfo code> 'S DateTimeformat code>. Dans ce cas, "d" code> trouve la propriété shortdatePattern code>, qui sera quelque chose comme "dd.mm.yyyy", "jj / mm / aaaa", "mm / dd / aaaa "," aaaa-mm-dd "et ainsi de suite, selon les paramètres régionaux en question.

Vous pouvez donc en utiliser dans un motif personnalisé comme: P>

x.ToString("ddd " + ci.DateTimeFormat.ShortDatePattern, ci) // Sat 2000-12-23 on my set up, should presumably be pon 23.12.2000 on yours


2 commentaires

+1 totalement appris moi quelque chose de nouveau là-bas. J'aurais utilisé string.format. Agréable d'apprendre les alternatives.


String.Format Selon la réponse de @kristoffer Jansson, la réponse de Jansson est une bonne façon de peaufiner le même chat également, bien que ce qui précède puisse être le seul moyen de faire face à des cas plus compliqués où vous souhaitez transmettre la chaîne d'un endroit à une autre place () Appelez-vous dans une autre (et ne peut donc pas passer de Tostring () à String.Format ()). Et oui, c'est est bien de savoir comment fonctionner les formats standard :)