java - 尝试解析日期字符串时出现 ParseException

标签 java date simpledateformat date-parsing datetime-parsing

我编写了一段代码来解析日期字符串 -

    DateFormat cal = new SimpleDateFormat("yyyy-MM-dd hh:mm");
    cal.setLenient(false);
    try {
        cal.parse("2018-01-01 14:42");
    }
    catch (Exception e)
    {
        e.printStackTrace();
    }
}

但我收到一个异常消息 -

java.text.ParseException: Unparseable date: "2018-01-01 14:42"
at java.base/java.text.DateFormat.parse(DateFormat.java:388)
at MyClass.main(MyClass.java:10)

我不确定为什么会看到此错误,因为日期字符串和给定的格式是正确的。请帮忙

最佳答案

来自文档https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html :

SimpleDateFormat中的小写h表示12小时制的小时,24小时制则用大写H表示。当14 > 12时,日期14:42解析失败。

关于java - 尝试解析日期字符串时出现 ParseException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48170798/

相关文章:

java - 如何将 UTC 转换为日期时间?

java - 需要在 java 中以 yyyy/mm/dd 格式显示日期

java - SimpleDateFormat 中的两位数年份

javascript - 更改日期格式(Javascript)

python从id的日期范围中找到唯一的日期

java - Gson:java.text.ParseException:无法解析的日期: "2018-04-09T09:00:00+02:00"

java - 我可以将字符串转换为整数或为其赋值吗?

java - 如何在spring boot中使用@Bean为抽象类创建bean

java - 模运算符不能给出正确的结果

java - 在文件中保存数据的文件格式以及如何读取此数据 - Spring MVC