将 java.util.Calendar ISO 8601 格式转换为 java.sql.Timestamp [英] Convert java.util.Calendar ISO 8601 format to java.sql.Timestamp

查看:21
本文介绍了将 java.util.Calendar ISO 8601 格式转换为 java.sql.Timestamp的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 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的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆