Comment obtenir uniquement du temps à partir de la date-heure C #

Supposons que j’ai la valeur 22/06/2009 10:00:00. Comment puis-je obtenir que 10h00 du matin à partir de cette date.

Vous avez beaucoup d’options pour cela:

DateTime dt = DateTime.Parse("6/22/2009 07:00:00 AM"); dt.ToSsortingng("HH:mm"); // 07:00 // 24 hour clock // hour is always 2 digits dt.ToSsortingng("hh:mm tt"); // 07:00 AM // 12 hour clock // hour is always 2 digits dt.ToSsortingng("H:mm"); // 7:00 // 24 hour clock dt.ToSsortingng("h:mm tt"); // 7:00 AM // 12 hour clock 

J’espère que cela pourra aider!

🙂

Lien utile: Patterns DateTime.ToSsortingng ()

A partir d’un DateTime , vous pouvez utiliser .TimeOfDay – mais cela vous donne un TimeSpan représentant l’heure dans la journée (10 heures).

Il n’y a que le type DateTime en C # et il comprend la partie date et heure. Si vous ne vous souciez pas de la partie Date de DateTime, définissez-la comme suit:

 DateTime myTime = default(DateTime).Add(myDateTime.TimeOfDay) 

De cette façon, vous pouvez être cohérent sur toutes les versions de .NET, même si Microsoft décide de remplacer la date de base par une autre valeur que 1/1/0001.

Vous voudrez peut-être examiner la méthode DateTime.ToShortTimeSsortingng () .

En outre, il existe de nombreuses autres méthodes et propriétés sur l’object DateTime qui peuvent vous aider à définir la date ou l’heure comme vous le souhaitez. Il suffit de regarder la documentation.

Il y a différentes façons de le faire. Vous pouvez utiliser DateTime.Now.ToLongTimeSsortingng() qui ne renvoie que l’heure au format chaîne.

Vous pouvez utiliser le code suivant:

 DateTime dt = new DateTime(2009, 6, 22, 10, 0, 0); //Date 6/22/2009 10:00:00 AM ssortingng time = dt.ToSsortingng("hh:mm tt"); //Output: 10:00 AM time = dt.ToSsortingng("HH:mm tt"); //Output: 10:00 AM dt = new DateTime(2009, 6, 22, 22, 0, 0); //Date 6/22/2009 10:00:00 PM time = dt.ToSsortingng("hh:mm tt"); //Output: 10:00 PM time = dt.ToSsortingng("HH:mm tt"); //Output: 22:00 PM 

Essaye ça:

 TimeSpan TodayTime = DateTime.Now.TimeOfDay; 

Cela fonctionne pour moi. Je l’ai découvert lorsque j’ai dû travailler avec DateTime.Date pour obtenir uniquement la partie date.

 var wholeDate = DateTime.Parse("6/22/2009 10:00:00 AM"); var time = wholeDate - wholeDate.Date; 

Vous pouvez simplement écrire

 ssortingng time = dateTimeObect.ToSsortingng("HH:mm"); 

Vous pouvez utiliser ToSsortingng("T") pendant une longue période ou ToSsortingng("t") pendant une courte période.

Si vous cherchez à comparer les dates et non les dates, vous pouvez simplement avoir une date de comparaison standard ou la date que vous utilisez, comme dans …

 DateTime time = DateTime.Parse("6/22/2009 10:00AM"); DateTime compare = DateTime.Parse(time.ToShortDateSsortingng() + " 2:00PM"); bool greater = (time > compare); 

Il y a peut-être de meilleurs moyens d’y parvenir, mais conserve vos dates correspondantes.

Si vous utilisez gridview, vous ne pouvez afficher que l’heure avec l’exemple DataFormatSsortingng="{0:t}" :

  By bind the value:-  By bound filed:-  

Vous pouvez l’utiliser

 lblTime.Text = DateTime.Now.TimeOfDay.ToSsortingng(); 

Il est en temps réel avec une valeur en millisecondes et se règle uniquement sur le temps.