2012-11-20 84 views
8

我從本地數據庫獲取日期字符串2012-11-21 13:11:25。我必須根據UTC設置將其轉換並將其顯示在特定屏幕上。所以如果它的GMT+05:30它應該在屏幕上顯示爲2012-11-21 18:41:25。我怎樣才能做這個轉換。我檢查了一些問題,但沒有解決。根據UTC格式轉換日期和時間字符串

我能夠獲得一個約會對象,在此之後將返回類似Wed Nov 21 13:11:25 GMT+05:30 2012我需要的時間爲18:41:25和日期11-21-2012

在此先感謝

+0

你可以看看這個: [皈依] [1] [1]:http://stackoverflow.com/questions/2609360/converting-local-timestamp-to-utc-timestamp-in-java 希望這可以幫助。 – kittu88

回答

14

dfinputFmt必須使用相同的格式。

但我認爲你應該做這樣的:

Date myDate = new Date(); 

    Calendar calendar = Calendar.getInstance(); 
    calendar.setTimeZone(TimeZone.getTimeZone("UTC")); 
    calendar.setTime(myDate); 
    Date time = calendar.getTime(); 
    SimpleDateFormat outputFmt = new SimpleDateFormat("MMM dd, yyy h:mm a zz"); 
    String dateAsString = outputFmt.format(time); 
    System.out.println(dateAsString); 
1

最好的方式得到日期的格式化字符串中所需的格式

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US); 
dateFormat.setTimeZone(TimeZone.getTimeZone("UTC")); 
String formatted = dateFormat.format(date); 
5

從當前時間獲取UTC:

public String getCurrentUTC(){ 
     Date time = Calendar.getInstance().getTime(); 
     SimpleDateFormat outputFmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
     outputFmt.setTimeZone(TimeZone.getTimeZone("UTC")); 
     return outputFmt.format(time); 
} 
相關問題