我有错误检查日期是否有效。错误检查 - Java
我试过下面的代码,但我仍然收到错误。
if (sales == null || sales != "mm/dd/yyyy" {
errors.add("phone", new ActionMessage("error.sales.required"));
}
我有错误检查日期是否有效。错误检查 - Java
我试过下面的代码,但我仍然收到错误。
if (sales == null || sales != "mm/dd/yyyy" {
errors.add("phone", new ActionMessage("error.sales.required"));
}
我只是这样写这个,但你可以自定义正则表达式来匹配正确的日期。以下是日期格式,如12/30/2004。这将需要两个月份和日期的数字。您可能需要进一步对其进行自定义,以便它不会将天数大于31的输入值或月份值超过12的值输入。
String sales = "12/12/2004";
if (sales == null || !sales.matches("\\d{2}\\/{1}\\d{2}\\/{1}\\d{4}")){
System.out.println("Sale is null or date format doesn't match");
}
有了这一个下面你可以有月值一个数字和日期值一个数字,正则表达式仍然会通过输入值。
!sales.matches("\\d{1,2}\\/{1}\\d{1,2}\\/{1}\\d{4}")
你也可以使用这个函数来解析以所需格式以字符串格式给出的日期。如果能够解析或返回false,则返回true。将您的代码sales != "mm/dd/yyyy"
替换为isValidDateFormat(sales, "MM/dd/yyyy")
。
public static boolean isValidDateFormat(final String data, final String dateFormat){
try{
SimpleDateFormat formatter = new SimpleDateFormat(dateFormat);
formatter.format(date);
return true;
}
catch(final ParseException ex){
return false;
}
}
你缺少一个右括号')'“MM/DD/YYYY” – shash678
什么是错误消息后,似乎你缺少日期比较后一个右括号。 – Juniar