我正试图从DateChooserCombo
获取日期,如下所示
SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-DD");
String date = sdf.format(dateChooser.getDate());
但是方法getDate()
给了我错误(非法的前向引用)。我也尝试过getSelectedDate()
,但它是一样的。我能做什么?
无论如何,我使用Apache Netbeans 12.1和日期选择器应该是这个:https://github.com/vadimig/jdatechooser
谢谢。
我从你的问题中提供的链接下载了JDateChooser
代码。没有datechooser.beans.DateChooserCombo
类中的getDate()
方法。有一个getSelectedDate()
方法返回一个java.util.Calendar类的实例。
另外,根据java.text.SimpleDateFormat
类的文档,模式YYYY-MM-DD
是一个有效的模式,但我不认为这是你想要的模式。D
表示一年中的天,这意味着2月27日是一年中的第58天。您可能需要d
。类似地,Y
表示Week year
,而您可能想要y
。
DateChooserCombo
中选择的日期的字符串表示形式,您可能需要以下代码:
DateChooserCombo dcc = new DateChooserCombo(); // or however you create and configure it
Calendar cal = dcc.getSelectedDate();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String date = sdf.format(cal.getTime());
顺便说一下,JDateChooser
的发展似乎在七年前就停止了。也许可以考虑使用JavaFX,它有一个DatePicker组件,可以与Java的日期时间API一起工作。