首页 > 解决方案 > 在 Java 中检查本地日期

问题描述

我收到一个日期,我想检查它是否格式不正确(dd/MM/YYYY),我添加了一个错误来显示,知道我的日期是 localDate 类型。我发现了很多关于如何验证字符串日期但不是本地日期的代码,如果有人知道的话:这是我目前所做的,即使以正确的格式返回所有日期

LocalDate mydate;
final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/YYYY"); 
try {  
        String date = myDate.format(formatter);
        LocalDate.parse(date, formatter);
} 
catch (Exception e) { 
     errors.add(....));
} 
   

谢谢

标签: javalocaldate

解决方案


推理似乎是循环的。

您在 LocalDate 中有一个值(我想 - 尽管您没有显示任何初始化或分配给 myDate)。

您要求将日期格式化为 dd/mm/yyyy。

然后您要求 LocalDate 解析与 dd/mm/yyyy 相同的字符串。

我不明白其中任何一个如何会失败。如果成功分配了 LocalDate,则转换为字符串肯定会成功。当然,对刚刚格式化的内容的解析将起作用。


推荐阅读