J'ai besoin de supprimer la partie heure de la date heure ou probablement d'avoir la date au format suivant sous object
forme non sous forme de string
.
06/26/2009 00:00:00:000
Je ne peux utiliser aucune string
méthode de conversion car j'ai besoin de la date sous object
forme.
J'ai d'abord essayé de convertir le DateTime
en un string
, de supprimer la date spécifique à l'heure, mais il l'ajoute 12:00:00 AM
dès que je le reconvertis dos à DateTime
object
dos.
var dateTime = DateTime.Now.Date;
Réponses:
Utilisez la propriété Date :
La
date
variable contiendra la date, la partie heure sera00:00:00
.la source
06/26/2009 00:00:00.000
, mais63381571200000000
c'est le nombre de Ticks (1 / 100000000e de seconde) depuis leDateTime.MinValue
(01/01/0001). Si vous allez afficher la date, convertissez-la en chaîne, sinon, elle a une composante horaire de minuit. Faites avec.Vous pouvez utiliser des chaînes de format pour donner à la chaîne de sortie le format souhaité.
En savoir plus sur les chaînes de format de date et d'heure personnalisées .
la source
CultureInfo.DateTimeFormat.ShortDatePattern
d'être convivialdd/MM/yyyy
à votre guise avant de l'utiliser!.ToString()
avec le format souhaité est exactement ce dont j'avais besoin, merci!Utilisez la méthode ToShortDateString. Voir la documentation http://msdn.microsoft.com/en-us/library/system.datetime.toshortdatestring.aspx
la source
ToShortDateString
IFormatProvider
Jetez un œil à la propriété DateTime.Date .
la source
var dateTime = DateTime.Now.Date;
L'
Date
établissement vous renverra la date à minuit.Une option pourrait être d'obtenir les valeurs individuelles (jour / mois / année) séparément et de les stocker dans le type souhaité.
la source
Aucune des réponses ci-dessus n'a résolu mon problème sur les winforms.
la façon la plus simple d'atteindre UNIQUEMENT la date est la fonction simple dans Datetime:
Vous n'aurez que la date dans la chaîne d'anniversaire.
la source
(string)
casting? Le type retourné parToShortDateString
est en effet une chaîne.Essayez de créer votre propre structure pour cela. L'objet DateTime aura à la fois la date et l'heure
la source
Tu ne peux pas. Un DateTime dans .NET a toujours une heure, par défaut 00: 00: 00: 000. La propriété Date d'un DateTime est également un DateTime (!), Ayant ainsi une heure par défaut à 00: 00: 00: 000 également.
Il s'agit d'une pénurie dans le .NET Framework, et on pourrait faire valoir que DateTime dans .NET viole le principe de responsabilité unique .
la source
DateTime.Date
la source
Voici une autre méthode utilisant
String.Format
Production:
Cela fonctionne également si la date et l'heure sont stockées dans la base de données.
Pour plus de formatage de date et d'heure, vérifiez ces liens:
Référence 1
Référence 2
L'espoir aide.
la source
Cette façon d'obtenir seulement une date sans heure
Sortie = 16/05/2015
la source
J'ai écrit une
DateOnly
structure. Cela utilise un DateTime sous la peau, mais aucune partie de l'heure n'est exposée publiquement:Ceci est converti à partir de VB.NET, donc excuses si certaines conversions ne sont pas à 100%
la source
Utilisez date.ToShortDateString () pour obtenir la date sans le composant time
utilisez date.ToString () pour personnaliser le format de la date
la source
Je suis surpris que personne n'ait mentionné DateTime.
Voir MSDN
la source
Vous pouvez essayer ceci pour la seule date de la date / heure
Où dt est le
DateTime
la source
Je suis tombé sur ce message en essayant de résoudre le Q. original
J'utilise Asp.Net et après quelques recherches que j'ai trouvées lorsque vous vous liez à la valeur de la date dans le code derrière, vous pouvez laisser tomber l'heure afin qu'elle ne s'affiche pas à l'écran.
C #:
aspx:
la source
utilisation
la source
Si vous le convertissez en chaîne, vous pouvez facilement le faire comme ceci.
Je prends la date comme objet DateTime.
Cela ne vous donnera que la date.
la source
Si vous prenez la date du calendrier, nous obtenons également du temps. Ce qui n'est pas nécessaire tout le temps. En utilisant cela, nous pouvons supprimer l'heure de la date.
la source
d'après mon expérience, aucune desdites solutions n'a fonctionné, peut-être parce que je voulais supprimer l'heure de la date extraite de la base de données, mais le code ci-dessous a bien fonctionné:
la source
Déclarez la variable sous forme de chaîne.
exemple :
puis attribuez une valeur comme:
la source
Je sais que c'est un ancien post avec de nombreuses réponses, mais je n'ai pas vu cette façon de supprimer la partie temps. Supposons que vous ayez une
DateTime
variable appeléemyDate
, avec la partie date avec heure. Vous pouvez créer un nouvelDateTime
objet à partir de celui-ci, sans la partie temps, en utilisant ce constructeur:Comme ça:
De cette façon, vous créez un nouvel
DateTime
objet basé sur l'ancien, avec 00:00:00 comme partie horaire.la source
Créez une structure qui ne contient que les propriétés souhaitées. Ensuite, une méthode d'extension pour obtenir facilement cette structure à partir d'une instance de DateTime.
Usage
la source
Pour obtenir uniquement la partie date, utilisez la méthode ToString (),
exemple: DateTime.Now.Date.ToString ("jj / MM / aaaa")
Remarque: le mm au format jj / mm / aaaa doit être en majuscule
la source
Utiliser .Date d'un objet DateTime ignorera la partie heure.
Voici le code:
Production:
la source
Utilisez un peu de RegEx:
Produit une date au format: jj / mm / aaaa
la source
Pour une utilisation par la base de données, le répéteur .. dans la page aspx: <% # Eval ("YourDateString"). ToString (). Remove (10)%>
la source
la source
Cela pourrait être simplement fait de cette façon:
la source
Ce code vous donne une vision claire de l'écriture
Date
ainsi queTime
séparémentJ'espère que cela t'aides.
la source