TimeSpan到UTC毫秒

时间:2017-07-07 03:26:46

标签: android datetime xamarin xamarin.android timespan

我目前有一个TimeSpan变量,用于保存TimePicker设置的时间。我需要一个与TimeSpan.TotalMilliseconds()给出的类似的长期,但我需要它与UTC相关。

我看到了一些策略,例如转换为DateTime然后使用DateTime.ToUniversalTime(),但我还没有成功获得转换后的总毫秒数。我尝试使用新的UTC DateTime并使用DateTime.TimeOfDay()将其重新放回TimeSpan类型,然后再次使用TimeSpan.TotalMilliseconds(),但它不起作用。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

您可以使用此方法

public double MilliTimeStamp(DateTime TheDate)
        {
            DateTime d1 = new DateTime(1970, 1, 1);
            DateTime d2 = TheDate.ToUniversalTime();
            TimeSpan ts = new TimeSpan(d2.Ticks - d1.Ticks);
            return ts.TotalMilliseconds;
        }

答案 1 :(得分:0)

我也有同样的问题。将此用于datepicker方法 -

DateTime.setTimeZone(java.util.TimeZone.getTimeZone("UTC"));
DateTime.set(final_year, final_month, final_day, final_hour, final_minute,0);
private long datetime=DateTime.getTimeInMillis();
String dt= String.valueOf(datetime);

我认为这将解决您的问题!