2013-02-05 47 views
-2

可能重複:
Java Timezone: why Offset is neededJava的時區轉換問題

我的系統時區爲Asia/Calcutta。我需求量的是時間在一個時區轉換成其他。

long l = 1223123123232l;// long value representing the date. 
TimeZone tz = TimeZone.getTimeZone("Australia/Sydney");// First Time zone 
long tzOff = tz.getOffset(l); 
java.util.Date d = new Date(l-tzOff); // WHY THIS?? 
DateFormat df = new SimpleDateFormat("dd MMM yyyy HH:mm:ss z"); 
df.setTimeZone(TimeZone.getTimeZone("Africa/Asmara"));// Required Time zone 
String s = df.format(d); 
System.out.println(s); 

我的代碼有什麼問題?

+3

你不是最近發佈的同一個問題

試試? – NPE

+0

是的,先生,但我現在面臨這個問題,需要緊急解決這個問題? –

回答

0

這是一個重複的問題,已經解決。

使用Java Timezone: why Offset is needed

或低於

Date date = new Date(); 
DateFormat dateFormat = new SimpleDateFormat("dd MMM yyyy HH:mm:ss z");  
System.out.println("Default time, timezone EST : "+dateFormat.format(date));   
TimeZone t1 = TimeZone.getTimeZone("Asia/Calcutta"); 

dateFormat.setTimeZone(t1); 
System.out.println("Converted time, timezone IST : "+dateFormat.format(date));