2015-03-03 64 views

回答

2

試試這個:

Double d = (double) (TimeZone.getTimeZone(Time.getCurrentTimezone()).getOffset(System.currentTimeMillis())); 

Time.getCurrentTimezone()返回時區ID爲String,你必須使用TimeZone類來獲得的偏移量,你必須通過當前的時間,因爲時區偏移取決於在時間上的確切實例,即時區偏移不是靜態的。

getOffset()方法返回一個int與時區偏移以毫秒爲單位。不知道爲什麼你需要一個double,但你可以投它。

如果你想以小時爲單位的偏移量,你也可以這樣做:

Double d = (TimeZone.getTimeZone(Time.getCurrentTimezone()).getOffset(System.currentTimeMillis()))/(1000.0 * 60.0 * 60.0); 

還要記住,不是所有時區偏移是充滿小時。