java.text.ParseException: Unparseable date: “24-MAR-26“

简介: 最近有一个项目用户在测试阶段反馈了一个错误,如下java.text.ParseException: Unparseable date: “24-MAR-26”,这个错误大致意思是SimpleDateFormat处理不了这种类型的时间,因为我们在开发的时候规定的时间类型一般为SimpleDateFormat formatter = new SimpleDateFormat(“yyyy-MM”);这种时间类型,所以用户提供的类型为如下这种的处理不了。本文讲解如何解决这个问题。

前言



最近有一个项目用户在测试阶段反馈了一个错误,如下java.text.ParseException: Unparseable date: “24-MAR-26”,这个错误大致意思是SimpleDateFormat处理不了这种类型的时间,因为我们在开发的时候规定的时间类型一般为SimpleDateFormat formatter = new SimpleDateFormat(“yyyy-MM”);这种时间类型,所以用户提供的类型为如下这种的处理不了。


4.png


我的具体代码为


Date currentTime = new Date();
      SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
      String dateString = formatter.format(currentTime);
      Calendar bef = Calendar.getInstance();
      Calendar aft = Calendar.getInstance();
      try {
        bef.setTime(formatter.parse("2020-12-12"));
        aft.setTime(formatter.parse(dateString));
      } catch (ParseException e) {
        e.printStackTrace();
      }
      int result = aft.get(Calendar.MONTH) - bef.get(Calendar.MONTH);
      int month = (aft.get(Calendar.YEAR) - bef.get(Calendar.YEAR)) * 12;
      int difference = month + result;
      if (difference > 6) {
        return true;
      }


这段代码是为了判断现在日期是否大于指定日期6个月

相关文章
|
6月前
|
Java 关系型数据库 MySQL
37、一篇文章学习 Java 中的日期相关类(Date 和 Calendar),非常常用
37、一篇文章学习 Java 中的日期相关类(Date 和 Calendar),非常常用
70 0
|
6月前
|
Java
关于java获取时间 new Date(),显示“上午、下午”
关于java获取时间 new Date(),显示“上午、下午”
101 0
|
2月前
|
安全 Java API
时间日期API(Date,SimpleDateFormat,Calendar)+java8新增日期API (LocalTime,LocalDate,LocalDateTime)
这篇文章介绍了Java中处理日期和时间的API,包括旧的日期API(Date、SimpleDateFormat、Calendar)和Java 8引入的新日期API(LocalTime、LocalDate、LocalDateTime)。文章详细解释了这些类/接口的方法和用途,并通过代码示例展示了如何使用它们。此外,还讨论了新旧API的区别,新API的不可变性和线程安全性,以及它们提供的操作日期时间的灵活性和简洁性。
|
1月前
|
Java
Java的Date类使用
Java的Date类使用
22 0
|
2月前
|
Java API
java date 增加10s后的时间
在 Java 中,要将 `Date` 对象增加 10 秒,可以通过 `Calendar` 类(适用于 Java 8 之前)或 `java.time` 包中的 `LocalDateTime`、`ZonedDateTime` 和 `Instant` 类(Java 8 及以上)实现。使用 `Calendar` 类时,需设置并修改 `Calendar` 实例。而在 `java.time` 包中,可以使用 `plus` 方法结合 `ChronoUnit.SECONDS` 来增加秒数。具体选择取决于是否需要处理时区以及 Java 版本。
113 1
|
5月前
|
安全 Java 测试技术
滚雪球学Java(51):掌握Java Date类:用法、弊端与时间戳转换技巧,助你轻松处理日期时间
【6月更文挑战第5天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
86 0
滚雪球学Java(51):掌握Java Date类:用法、弊端与时间戳转换技巧,助你轻松处理日期时间
|
6月前
|
Java
Java String类型转换成Date日期类型
Java String类型转换成Date日期类型
|
6月前
|
Java
java将Date类型转化为固定格式yyyyMMdd字符串
java将Date类型转化为固定格式yyyyMMdd字符串
412 0
|
6月前
解决 java.text.ParseException: Unparseable date
解决 java.text.ParseException: Unparseable date
341 0
java实体类接收Date时间
java实体类接收Date时间
下一篇
无影云桌面