微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法从 DateChooserCombo 获取日期

如何解决无法从 DateChooserCombo 获取日期

我正在尝试从 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 代码。 getDate() 类中没有 datechooser.beans.DateChooserCombo 方法。有一个 getSelectedDate() 方法返回类 java.util.Calendar 的一个实例。

此外,根据 java.text.SimpleDateFormat 类的 documentation,模式 YYYY-MM-DD 是一个有效模式,但我认为这不是您想要的模式。 D 表示一年中的一天,这意味着二月 27th 是一年中的第 58th 天。你可能想要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 的 date-time API 配合使用。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。