TimeSpan 自 UTC 毫秒

TimeSpan to UTC milliseconds

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

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

有什么想法吗?

我也遇到了同样的问题。将此用于您的日期选择器方法-

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);

我想这会解决你的问题!

你可以用这个方法

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;
        }