在我的项目中,我的标准DateField格式为"dd-MMM-yyyy"。我使用了setDateFormat("dd-MMM-yyyy")来使用这种格式。但现在用户也希望输入"MM/dd/yyyy"、"MM-dd-yyyy"one_answers"MM-dd-yyyy"格式,可显示的日期必须仍然是"dd-MMM-yyyy"。
现在,当我在带有setDateFormat("dd MMM yyyy")的DateField中输入"2016年1月31日"时,我收到了"无法识别日期格式"错误。
我的问题是如何使日期字段接受多个日期格式的输入(不使用日历选择器)。
非常感谢您的帮助。感谢您阅读这篇文章!!!
您可以覆盖方法handleUnparsableDateString
:
public class MyDateField extends DateField {
@Override
protected Date handleUnparsableDateString(String dateString) throws Converter.ConversionException {
return super.handleUnparsableDateString(dateString);
}
}
当DateField
无法解析输入时,会调用该方法。您可以解析方法中的输入并返回正确的Date
实例。