2012-03-16 137 views
0

我將當前日期轉換爲GMT時間。GWT將當前日期轉換爲GMT

結果是不一致的,由於這個我的日期時間計算是worng。

  DateTimeFormat df = DateTimeFormat.getFormat("dd MMM yyyy hh:mm:ss"); 
      String gmtStr = new Date().toGMTString().replace("GMT", "").trim(); 
      long deptime= depTime - df.parse(gmtStr).getTime(); 
      deptime = deptime/1000; 
      seconds = (deptime % 60); 
      minutes = (deptime % 3600)/60; 
      hours = (deptime/3600); 

回答

2

不知道什麼是最好的辦法是,但你可以使用getTimezoneOffsert

final Date gmtDate = new Date(); 
final Date offDate = new Date(gmtDate.getTime() + gmtDate.getTimezoneOffset() * 60 * 1000); 

offDateDateTimeFormat.getFormat(PredefinedFormat.DATE_TIME_LONG)顯示仍然會顯示UTC/GMT偏移,因爲基本上你創建一個在當前時區新的時間,但它與GMT時間的時間相匹配,從getTime()返回的長整型值將是您可以在計算中使用的毫秒數。