java - 如何在 Java 中验证日期?

标签 java date simpledateformat

<分区>

我有一个以这种格式出现的日期 -

2015-4-10T11:20:56

我需要验证日期并确保日期不大于当前日期。这意味着如果今天是 4 月 10 日,那么它不应该是 4 月 11 日或更晚。

String abc = "2015-4-10T11:20:56";

if(abc is greater than todays date) {
    // log an error
}

我该怎么做?

更新:-

我试过这样解析,但没用 -

    String abc = "2015-4-10T11:20:56";
    SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSSSSS");
    try {
        format.parse(abc);
    } catch (ParseException e) {
        e.printStackTrace();
    }

最佳答案

您必须将字符串转换为日期对象。 您可以使用 SimpleDateFormat

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-M-d'T'HH:mm:ss");
Date date = sdf.parse(dateStr);
if (date.compareTo(new Date()) > 0) {
    // log an error    
}

关于java - 如何在 Java 中验证日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29555890/

相关文章:

javascript - 获取从今天开始的星期几

Javascript:将字符串解析为日期作为本地时区

Java JSpinner 错误地更改了年份

java : How can I cast Date from "Thu May 01 00:00:00 WEST 2014 " to "2014-01-05 00:00:00.0"

java - Android:SimpleDateFormat 给出 API 错误

java - 我在 Java 程序中遇到 NullPointer 异常

java - 带有 Selenium 的 ChromeDriver 显示空白页

java - 测试是否在规则左侧的 BitSet 中设置了某个位

java - 是否可以添加另一个字段来查找和过滤 java 中 mongodb 数据库的结果?

java - 在命令行中更改 Swing L&F 效果不佳