web-dev-qa-db-fra.com

Comment supprimer une partie d'heure de la date en C # dans un objet DateTime uniquement

J'ai besoin d'enlever la partie heure de la date heure ou probablement d'avoir la date au format suivant sous forme d'objet et non sous forme de chaîne.

06/26/2014 00: 00: 00: 000

Je ne peux utiliser aucune méthode de conversion de chaîne car j'ai besoin de la date sous forme d'objet.

J'ai d'abord essayé de convertir la date en chaîne, puis d'en supprimer la date spécifique, mais il ajoute 12:00:00 AM dès que je le reconvertis en objet DateTime.

5
sonali

Vous ne pouvez pas créer un objet DateTime sans une heure. Il y a toujours du temps dedans.

Si vous voulez le sortir sans portion d'heure, vous pouvez utiliser un chaîne de format } pour le faire:

date.ToString("MM/dd/yyyy");

Chaînes de format de date et d'heure standard
Chaînes de format de date et d'heure personnalisées

Comme d'autres l'ont déjà dit, vous pouvez accéder à date.Date pour obtenir une valeur avec toute information d'heure spécifique omise, mais l'heure de l'heure indiquée sera toujours 00:00.

8
JLRishe

Vous pouvez utiliser l'objet Date de l'objet DateTime pour obtenir uniquement le jour.

DateTime dateOnly = date1.Date;

Si vous voulez une chaîne de date à partir de l'objet DateTime, utilisez la méthode ToString en lui fournissant le format. Vous pouvez en savoir plus sur le format de date personnalisé dans cet article MSDN article .

string strDate =  date.ToString("MM/dd/yyyy");
5
Adil

Je dois supprimer la partie heure de la date heure ...

C'est impossible. Vous ne pouvez pas avoir une DateTime instance sans information de temps. Par exemple, vous ne pouvez pas avoir une instance DateTime uniquement 06/26/2014 ou simplement 00:00:00:000 uniquement.

Si vous voulez obtenir uniquement une partie de date de votre instance, vous pouvez utiliser DateTime.Date propriété .

Obtient le composant date de cette instance.

Mais toujours, cette propriété .Date attribue sa partie heure à minuit.

Rappelez-vous qu'une DateTime n'a pas le format implicite any. Il a juste des valeurs de date et heure. Le concept de format ne s'applique que si vous souhaitez l'afficher sous la forme string.

Dans une partie représentation, vous devez utiliser la représentation sous forme de chaîne comme;

yourDateTime.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);
2
Soner Gönül
var dateAndTime = DateTime.Now;
var date = dateAndTime.Date;

La variable date contiendra la date, l'heure sera 00:00:00.

2
Coder