美文网首页
日期解析:2021-11-12T10:27:06+08:00

日期解析:2021-11-12T10:27:06+08:00

作者: 缓慢移动的蜗牛 | 来源:发表于2021-11-18 10:13 被阅读0次

    这是一种常见的第三方接口返回的日期格式,因为有别于我们常用的"yyyy-MM-dd HH:mm:ss"格式,所以我们首先要把这种字符串解析为Date,再转为需要的格式。

    类似日期2021-11-12T10:27:06+08:00 的 格式为:yyyy-MM-dd’T’HH:mm:ssXXX
    其中:

    T是不需要解析的无意义字符,需要用单引号包起来
    +08:00是时区,对应为"XXX"

    • 老式Java API解析
    String a = "2021-11-12T10:27:06+08:00";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX");
    SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    try {
        Date date1 = sdf.parse(a);
        String dateString = sdf2.format(date1);
        System.out.println("date: "+dateString);
    } catch (ParseException e) {
       e.printStackTrace();
    }
    
    • JAVA8解析
      这是一种标准日期格式,在Java8中有对这种日期格式的默认解析方式
      Java8中提供了DateTimeFormatter类来解析/格式化日期。
      在DateTimeFormatter中定义了许多默认的日期格式,下面通过DateTimeFormatter中默认定义的ISO_OFFSET_DATE_TIME解析:
    String a = "2021-11-12T10:27:06+08:00";
    LocalDateTime date = LocalDateTime.parse(a,DateTimeFormatter.ISO_OFFSET_DATE_TIME);
    String dateString = date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
    System.out.println("dateString: "+dateString);
    

    相关文章

      网友评论

          本文标题:日期解析:2021-11-12T10:27:06+08:00

          本文链接:https://www.haomeiwen.com/subject/fajdtrtx.html