2011-11-23 78 views

回答

2

你可以創建一個日曆實例。

public static Date getDate(Date date,TimeZone zone){ 

    Calendar cal= Calendar.getInstance(zone); 
    cal.setTimeInMillis(date.getTime()); 

    Calendar output = Calendar.getInstance(); 

    output.set(Calendar.DAY_OF_MONTH, first.get(Calendar.DAY_OF_MONTH)); 
    output.set(Calendar.MONTH, first.get(Calendar.MONTH)); 
    output.set(Calendar.YEAR, first.get(Calendar.YEAR)); 
    output.set(Calendar.HOUR_OF_DAY, first.get(Calendar.HOUR_OF_DAY)); 
    output.set(Calendar.MINUTE, first.get(Calendar.MINUTE)); 
    output.set(Calendar.SECOND, first.get(Calendar.SECOND)); 
    output.set(Calendar.MILLISECOND, first.get(Calendar.MILLISECOND)); 

    return output.getTime(); 

}

+0

它獲取當前位置的時區? –

+0

傳遞的日期是UTC,並且傳遞的時區是所需的時區。此方法將UTC中的日期更改爲另一個時區。 您可以通過減去當前位置的時區的偏移量來獲取UTC中的日期。 TimeZone userTimeZone = TimeZone.getTimeZone(usertimeZoneId); \t \t回新的日期(userdate.getTime() - userTimeZone.getRawOffset()); –

+0

見代碼在這裏https://gist.github.com/1388333 –

相關問題