The*_*est 2 java swing netbeans date 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());
Run Code Online (Sandbox Code Playgroud)
但我收到这个错误:
Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Cannot format given Object as a Date
Run Code Online (Sandbox Code Playgroud)
有什么建议么?谢谢。
getDate()该方法DatePicker返回 a java.time.LocalDate,而不是a java.util.Date。这实际上是错误消息告诉您的内容,它需要 ajava.util.Date但有其他内容。
这意味着您不应该尝试使用 a 对其进行格式化java.text.SimpleDateFormat,请在此处使用 a java.time.format.DateTimeFormatter:
String date = datePicker1.getDate().format(DateTimeFormatter.ISO_LOCAL_DATE);
Run Code Online (Sandbox Code Playgroud)
ofPattern(String pattern)或使用以下方法定义自定义模式DateTimeFormatter:
String date = datePicker1.getDate().format(DateTimeFormatter.ofPattern("uuuu-MM-dd");
Run Code Online (Sandbox Code Playgroud)
在这种情况下,您甚至可以使用 的toString()方法LocalDate来获取String所需格式的 a :
String date = datePicker1.getDate().toString();
Run Code Online (Sandbox Code Playgroud)