2012-08-26 110 views
10

Possible Duplicate:
How to convert java.util.date to java.sql.date?错误铸造Java.Util.Date到Java.Sql.Date

我发现错误在我的功能,它显示了从初始化DF的DatatypeFactory中的newInstance()方法后错误结果,我发现了另一个错误:

java.lang.ClassCastException: java.util.Date cannot be cast to java.sql.Date 

我只是改变从

java.util.Date into java.SQL.Date 

再铸造软件包名称:

Date dateStarting = (Date) jDateChooserStart.getDate(); 
Date dateEnding = (Date) jDateChooserEnd.getDate(); 

如何解决此问题?

(后前:Convert jcalendar Date into XMLGregorianCalendar Getting Null Value

回答

27

这是不可能java.util.Datejava.sql.Date。你需要转换从一种类型到另代替:

java.util.Date utilStartDate = jDateChooserStart.getDate(); 
java.sql.Date sqlStartDate = new java.sql.Date(utilStartDate.getTime()); 
+0

喜@若昂感谢您的回答,我会尽力的。谢谢。 – randytan

+0

@randytan:好的,请让我知道它是否解决了您的问题。 –

3

从类转换异常,你可以看到,这些是2种不同的类型,不能投的,从一个到另一个。从java.util.Date转换为java.sql.Date,你可以使用:

java.util.Date date = new java.util.Date(); 
java.sql.Date sqlDate = new java.sql.Date(date.getTime()); 
+0

感谢您的支持@reimus,我会先尝试一下。谢谢你的帮助。 – randytan