[英]With Noda Time, how to create a LocalDateTime using a LocalDate and LocalTime
[英]Equivalent of joda LocalTime getMillisOfDay() in noda
我正在將一些代碼從Java移植到.NET,並尋找與LocalTime對象的getMillisOfDay()
joda-time方法等效的noda-time方法。
是否有同等學歷,或者我必須自己編寫?
在Noda Time 1.x中,使用LocalTime.TickOfDay
屬性,然后將其除以NodaConstants.TicksPerMillisecond
即可得到毫秒:
LocalTime localTime = ...;
long millis = localTime.TickOfDay / NodaConstants.TicksPerMillisecond;
借助開箱即用的.Net功能,您可以最接近午夜以來的毫秒數 :
dateTime.TimeOfDay.TotalMilliseconds
例如
double millisOfDay = DateTime.Now.TimeOfDay.TotalMilliseconds;
TimeOfDay
返回午夜以來的TimeSpan
(一天中的時間), TotalMilliseconds
返回(該名稱可能已經給出)該TimeSpan
的毫秒總數。
順便說一句,它是double
的,因此您還將獲得毫秒級的分數。 如果您非常需要此方法,則擴展方法可能會有所幫助:
public static class DateTimeExtension
{
// should of course be in pascal case ;)
public static int getMillisOfDay(this DateTime dateTime)
{
return (int) dateTime.TimeOfDay.TotalMilliseconds;
}
}
int millisOfDay = DateTime.Now.getMillisOfDay();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.