使用日期时区操作
本文关键字:操作 时区 日期 | 更新日期: 2023-09-27 18:10:34
我有Date
在客户端(用户在日期选择器中选择它),我想把它发送到服务器并使用UTC值用于将来的计算。
例如,用户选择Tue Oct 04 2011 00:00:00 GMT+0300 (E. Europe Daylight Time)
,我使用date.getTime()
向服务器发送毫秒数。在服务器上,我使用方法:
public static DateTime GetDateByMilliseconds(long milliseconds)
{
var date = new DateTime(1970, 1, 1);
return date.AddMilliseconds(milliseconds);
}
得到Oct 03, 2011 09:00:00 PM
。但是我想用值Oct 04 2011 00:00:00
来操作。
我该怎么办?在客户端重置日期时区?在服务器上添加偏移量?还有别的事吗?
我认为你应该这样做:
date.getTime() + (date.getTimezoneOffset() * 60 * 1000)
这将"移除"用户时区的偏移量。