在Android(4.3)设备上,我在TimeZone上设置了位置 GMT + 2
所以我的当地时间 15.11.2017 15:12
因此,结果是 15.11.2017 13:12
减去( 2小时)。行。
我想获得时区偏移。
这里代码:
private static TimeZone timeZoneUTC = TimeZone.getTimeZone("UTC");
private static Calendar calUTC = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
public static int getTimeZoneRawOffset() {
int offsetFromUtcMills = timeZoneUTC.getOffset(new Date().getTime());
return offsetFromUtcMills;
}
public static int getTimeZoneOffset() {
return calUTC.getTimeZone().getOffset(System.currentTimeMillis());
}
但这两种方法总是返回 0 。
为什么?
答案 0 :(得分:0)
我个人使用
TimeZone.getDefault().getRawOffset();
获取默认时区的偏移量。
示例:
ticket.getPurchaseDate().setTime(ticket.getPurchaseDate().getTime() + TimeZone.getDefault().getRawOffset());