创建了 Calendar.getInstance(),并尝试使用 instance.timezone.offset 值,该值与UTC时间相比是错误的。
例如:
UTC + 5:30-GMT + 5:30-将5小时(5 * 1000 * 60 * 60)+ 30分钟(1000 * 60 * 30)加到UTC时间 < / p>
UTC-3:00-GMT-3:00-将3小时(3 * 1000 * 60 * 60)减去UTC时间
在两种情况下,“日历实例”的“偏移量”值都不是上述计算得出的正确值。
与人共享日历实例中偏移值的使用目的。
Calendar modelDaysST = Calendar.getInstance();
Long offsetValue = modelDaysST.getTimeZone().getRawOffset();
modelDaysST.add(Calendar.DATE, noOfDays)
modelDaysST.set(Calendar.HOUR_OF_DAY, 0)
modelDaysST.set(Calendar.MINUTE, 0)
modelDaysST.set(Calendar.SECOND, 0)
modelDaysST.set(Calendar.MILLISECOND, 0)
Calendar scheduleStartTime = null
workScheduleModel.workingScheduleStartTime?.let {
scheduleStartTime=DateUtils.getCalendarFromTime(it,DateUtils.DATE_FORMAT_HH_mm_ss)}
modelDaysST.timeInMillis += ((scheduleStartTime?.timeInMillis ?: 0) + offsetValue)