我有一個包含日期和時間信息的Java Date對象,例如2010-11-11T09:30:47。我想編寫一個方法將這個Date對象轉換爲下面的格式。 「YYYY-MM-dd'T'HH:MM:ss.SSS'Z」原爲了得到格式的日期時間,我給
我寫下面的代碼
private Calender getValue(Date dateObject) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
formatter.setTimeZone(TimeZone.getTimeZone("GMT"));
String timestamp = formatter.format(dateObject);
System.out.println("Created GMT cal with date [" + timestamp + "]");
}
當我運行程序時,它是印刷
。創建GMT CAL與日期[2010-11-11T04:00:47.000Z]
我給什麼是 「2010-11-11T09:30:47」,我的時間是9點30分四十七秒。它打印的是「04:00:47」。
爲什麼時間在改變9.30到4.00。?
什麼我需要做的,因爲我給得到相同的時間。像2010-11-11T09:30:47.000Z
非常感謝。
什麼是你輸入的時間戳?你確定最初的'2010-11-11T09:30:47'是GMT嗎?在格式化之前,您是否嘗試過在創建Date對象之前嘗試過? – Quetzalcoatl 2013-04-23 09:31:26
看起來你可能不得不使用偏移量來使用時區。 – Frankline 2013-04-23 09:37:40