問題描述
我有一個 ISO 8601 日期格式 2015-09-08T01:55:28Z
的日期.我使用此代碼將 ISO 8601 命運轉換為日歷對象:
I have a date in ISO 8601 date format 2015-09-08T01:55:28Z
. I used this code to convert the ISO 8601 fate to a Calendar object:
Calendar cal = javax.xml.bind.DatatypeConverter.parseDateTime("2015-09-08T01:55:28Z");
現在我需要使用 cal.getTime()
來獲取我的時間,但我需要將其轉換為 java.sql.Timestamp
.我試著這樣做:
and now I need to use the cal.getTime()
to get my time, but I need to convert it to a java.sql.Timestamp
. I tried to do this:
final Timestamp finalDate = (Timestamp) cal.getTime();
但我得到了這個錯誤:
java.lang.ClassCastException: java.util.Date cannot be cast to java.sql.Timestamp
想法?
推薦答案
正如異常所說:Calendar::getTime()
返回一個 java.util.Date
對象,而不是 java.sql.Timestamp
對象.所以你不能將它轉換為 Timestamp 對象.
As the exception says: Calendar::getTime()
returns a java.util.Date
object, not a java.sql.Timestamp
object. So you cannot cast it to a Timestamp object.
用途:
Timestamp timestamp = new Timestamp(cal.getTimeInMillis());
并且還考慮替換 Calendar
帶有新的 日期 &Java SE 8 中引入的時間 API.
這篇關于將 java.util.Calendar ISO 8601 格式轉換為 java.sql.Timestamp的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!