java - LGoodDatePicker 与 getDate() 相关的问题

标签 java swing date netbeans datepicker

我正在将 LGoodDatePicker 与 Apache NetbeansIDE 12.2 ( https://github.com/LGoodDatePicker/LGoodDatePicker ) 一起使用,并且我需要获取格式为 YYYY-MM-DD 的日期。我正在使用这段代码:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String date = sdf.format(datePicker1.getDate());

但我收到此错误:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Cannot format given Object as a Date

有什么建议吗?谢谢。

最佳答案

DatePicker 的方法 getDate() 返回一个 java.time.LocalDate不是一个 java.util.Date。这实际上是错误消息告诉您的内容,它需要一个 java.util.Date 但得到了其他内容。
这意味着您不应该尝试使用 java.text.SimpleDateFormat 对其进行格式化,而应在此处使用 java.time.format.DateTimeFormatter:

String date = datePicker1.getDate().format(DateTimeFormatter.ISO_LOCAL_DATE);

或者使用 DateTimeFormatterofPattern(String pattern) 方法定义自定义模式:

String date = datePicker1.getDate().format(DateTimeFormatter.ofPattern("uuuu-MM-dd");

在这种情况下,您甚至可以使用 LocalDatetoString() 方法来获取所需的 String格式:

String date = datePicker1.getDate().toString();

关于java - LGoodDatePicker 与 getDate() 相关的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66692801/

相关文章:

java - 使用 JSplitPane 在 java 中向框架添加 3 个面板?

java - 如何在我的 spring 应用程序中测试 afterPropertiesSet 方法?

java - 更改 JFreeChart GanttChart 上的范围轴 - 非工作时间的 SegmentedTimeline

java - 如何从世界风测量工具中删除选项卡式平移 View

ruby - 如何计算 ruby​​ 日期的星期几?

java - 对数鼠标移动

java - 使用 Android 进行 Tinify API

Java Swing,遍历文本区域

r - 获取星期二的向量,但如果星期二适逢假期,则将其替换为 R 中的星期三

c++ - 当我将偏移量应用于此日期输出的一部分时会发生什么?