我知道这是一个非常简单的问题,但我做不到。我有一个获取当前时间的代码,但这个时间不准确。
booking.CreateDateTime = DateTime.Now.ToUniversalTime();
当我在 12:00 预订时,在数据库中存储 1:00,这意味着 1 小时的差异。
我怎样才能得到准确的时间?
用于System.currentTimeMillis()
获取自纪元以来的当前 GMT 时间(以毫秒为单位)。然后,您可以使用该值创建一个新的 Date 或 Calendar 对象,并将其本地化到用户所在的任何位置。
我不熟悉你在那里有什么,但ToUniversalTime
向我建议这是将你的时间调整到某个固定时区(可能是格林威治标准时间)
使用Date获取现在的时间,然后使用Calendar对其进行任何您想要的时区更改。
例如,假设CreateDateTime
实际上是您所说的字符串:
Date date = new Date();
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
booking.CreateDateTime = calendar.get(Calendar.HOUR_OF_DAY) + ":" + calendar.get(Calendar.MINUTE));