您好有办法检查输入是否是Java中的日期,日期格式为DD/MM/YYYY
所以int\int\int
我有基本检查if (x != "")
,但我想知道你是否检查它是一个约会。
现在我收到了新的错误代码:
try {
date = (Date) dateFormat.parse(dateInput);
} catch (ParseException e1) {
System.out.println("FAIL!!!!!!!!");
JOptionPane.showMessageDialog(null, "Date entered is incorrect, please close this window and try again");
new BookApp();
}
当我复制并粘贴它时,缩进可能会搞乱,但是当格式错误时它会起作用并弹出对话框菜单。但是当我给12\08\2015
时,它会给ClassCastError
。
我该如何工作?
答案 0 :(得分:3)
1)为日期模式创建格式化程序:
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
2)尝试将String输入格式化为日期:
Date date = dateFormat.parse(input);
现在,如果输入与您的模式不匹配,则会出现ParseException。
答案 1 :(得分:0)
您始终可以尝试解析日期并捕获解析是否成功。
如果字符串无法解析为日期,SimpleDateFormat将抛出异常。
public boolean isDate(String dateString) {
try {
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
return dateFormat.parse(dateString) != null;
} catch (ParseException e) {
return false;
}
}