Java 检查输入是否为日期
您好,有没有办法检查输入是否是Java中的日期,日期格式是Java 检查输入是否为日期,java,Java,您好,有没有办法检查输入是否是Java中的日期,日期格式是DD/MM/YYYYsoint\int\int 我有基本的检查如果(x!=”)但是我想知道你是否检查它是否是一个日期 现在我得到一个新的错误代码: try { date = (Date) dateFormat.parse(dateInput); } catch (ParseException e1) { System.out.println("FAIL!!!!!!!!");
DD/MM/YYYY
soint\int\int
我有基本的检查如果(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
。
我怎样才能让它工作 1)为日期模式创建格式化程序:
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
2) 尝试将字符串输入格式化为日期:
Date date = dateFormat.parse(input);
现在,如果输入与您的模式不匹配,您将得到一个ParseException。您可以尝试解析日期并捕获解析是否成功 如果字符串不能作为日期进行分析,则将引发异常
public boolean isDate(String dateString) {
try {
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
return dateFormat.parse(dateString) != null;
} catch (ParseException e) {
return false;
}
}
将MMM改为MMToday很难,谢谢你两次纠正我:)嗨,当我添加
12/08/1998
例如,它抛出一个ClassCastException
但是格式是正确的,你知道如何停止吗?这是另一个问题,如果你需要帮助,你应该发布你的代码