如何正确设置javafx日期选择器值?
我使用此方法设置如何正确设置javafx日期选择器值?,java,javafx,Java,Javafx,我使用此方法设置DatePicker值: public static final LocalDate LOCAL_DATE (String dateString){ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy"); LocalDate localDate = LocalDate.parse(dateString, formatter); return loc
DatePicker
值:
public static final LocalDate LOCAL_DATE (String dateString){
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy");
LocalDate localDate = LocalDate.parse(dateString, formatter);
return localDate;
}
try {
datePicker.setValue(LOCAL_DATE("2016-05-01");
} catch (NullPointerException e) {}
但有时会抛出一个异常:
java.time.format.DateTimeParseException:无法在索引0处分析文本“”
那么这里怎么了?您指定了一种格式来解析日期
dd-MM-yyyy
:
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy");
但是,您提供的日期格式与以下格式不匹配:
datePicker.setValue(LOCAL_DATE("2016-05-01"));
显然,“2016-05-01”
的格式不是“dd-MM-yyyy”
试一试
您指定了一个模式“dd-MM-yyyy”,并提供了“2016-05-01”,这显然与该模式不匹配。这是datepicker的格式化程序。是的,很明显,但问题是,您提供的日期格式与您为格式化程序指定的格式不同。我曾经尝试过没有任何DateTimeFormatter!这个格式化程序是告诉datepicker值还是显示值?
datePicker.setValue(LOCAL_DATE("01-05-2016"));