J'essaie de stocker une date raccourcie (MM / DD / AAAA) dans un objet DateTime. Le code suivant ci-dessous est ce que j'essaie actuellement de faire; Cela inclut l'heure (12:00:00) que je ne veux pas: (
DateTime goodDateHolder = Convert.ToDateTime(DateTime.Now.ToShortDateString());
9 Réponses :
au lieu de Plus tard, comme les autres l'ont signalé, vous devriez essayer d'obtenir la partie de date à ignorer la partie temporelle, en fonction de la situation. P> .now code> Vous pouvez utiliser .today code> qui ne supprime pas la partie temporelle, mais ne remplira que la partie de date et laisser le temps de la valeur par défaut. < / p>
Denttime.today.toshortdateSestring () a toujours le temps comme 12:00:00
Vous pouvez utiliser .Date pour obtenir la partie de date. Dans ces cas, le temps sera toujours 12h00 mais vous pouvez simplement ignorer cette partie si vous ne le voulez pas. P> DateTime code> est un entier interprété pour représenter les deux parties de DateTime (c'est-à-dire: date et heure). Vous aurez toujours la date et l'heure dans DateTime Code>. Désolé, il n'y a rien que vous puissiez faire à ce sujet. P>
Idem. En outre, les chaînes de format de date vous permettent essentiellement d'ignorer des pièces que vous n'êtes pas intéressé. Par exemple, comparez deux dates en utilisant la même chaîne de format de {mm / jj / aaaa} code> et l'heure n'est pas utilisée. . Notez que nous comparons réellement des chaînes, mais nous prétendons que nous comparons des objets de date.
@radarbob: presque. Nous comparons en fait des entiers qui ont été analysés d'un entier plus long, mais l'esprit de ce que vous dites est correct.
Vous avez seulement deux options dans cette situation. P>
1) ignorer la partie temporelle de la valeur. P>
2) Créer une classe d'emballage. P>
Personnellement, je suis enclin à utiliser l'option 1. P>
Une date d'heure aura toujours un composant temporel - même s'il est 12h00:00. Il vous suffit de formater la dateTime lorsque vous l'affichez (par exemple, Gooddateholder.toshortdateString ()). P>
L'objet DateTime stocke à la fois la date et l'heure. Pour afficher uniquement la date, vous utiliseriez la méthode DateTime.tostring (String).
DateTime goodDateHolder = DateTime.Now;
// outputs 10/19/2009
Console.WriteLine(goodDateHolder.ToString("MM/dd/yyyy"));
Dans la plupart des cas, il est préférable d'utiliser ThortieDateString, de sorte que la composante date utilise le format localisé.
Vous ne pourrez peut-être pas l'obtenir comme un objet DateTime ... mais lorsque vous souhaitez l'afficher, vous pouvez le formater de la manière dont vous voulez en faisant quelque chose comme. P>
mydateTime.tostring ("M / D / AAAAYY") qui donne 10/19/2009 pour votre exemple. P>
Vous obtiendrez toujours la partie de temps dans un type DateTime.
goodDateHolder.ToString("mm/dd/yyyy")
DateTime est simplement un UINT64 avec formatage utile et intelligent enroulé autour de celui-ci pour le faire apparaître comme une date plus une heure. Vous ne pouvez pas éliminer l'élément de temps. P>
Vous pouvez également consulter NODA TIME basé sur la bibliothèque de temps JAVA Joda . p>