2011-05-05 30 views
0

由於某種原因,這讓我把頭髮撕掉。使用Android格式化字符串時間戳

我有一個UNIX時間戳作爲Android中的字符串。我想要做的就是格式化它,以便它返回用戶的droid時區中的日期/時間。

我可以將它轉換爲時間戳就好,但它使用的是GMT而不是它們的本地化區域。

感謝

+0

退房的日曆和日期的Java類,它們含有本地化的工具。 – Dan 2011-05-05 21:08:04

回答

3

使用SimpleDateFormat構造與Locale您需要:

http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html#SimpleDateFormat%28java.lang.String,%20java.util.Locale%29

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US); 
Calendar c = Calendar.getInstance(); 
try { 
    Date dt = sdf.parse("2011-03-01 17:55:15"); 
    c.setTime(dt); 
    System.out.println(c.getTimeInMillis()); 
    System.out.println(dt.toString()); 
} catch (ParseException e) { 
    System.err.println("There's an error in the Date!"); 
} 

輸出:

1299002115000 
Tue Mar 01 12:55:15 EST 2011