2013-04-18 33 views
1

當您在java.sql.Timestamp實例上調用.toString時,您會在本地時區中找回格式化的字符串。我想要一個基於UTC的格式化字符串,就像我在表示中看到的那樣。我怎樣才能從代表中得到一個?如何將java.sql.Timestamp轉換爲基於UTC的字符串?

user> (def timestamp (doto (java.sql.Timestamp. 1366156869000) (.setNanos 42))) 
#'user/timestamp 
user> timestamp 
#inst "2013-04-17T00:01:09.000000042-00:00" 
user> (str timestamp) 
"2013-04-16 20:01:09.000000042" 

我知道,我可以用一個DateFormat,但據推測,這是一個常見的問題,所以我想知道如果有別的東西?

回答

0

閱讀:Converting local timestamp to UTC timestamp in Java

或者你也可以喬達時間爲本地時間轉換爲UTC這可能是一個更好的方式來做到這一點。

+0

Joda時間失去精度(納米將消失),所以這不是一個選項。我認爲您不需要進行任何轉換,因爲您已經具有UTC的值 - 字符串轉換正在取消UTC。 – ToBeReplaced

相關問題