字符串转时间,并设置格式

1.上代码

 public static void main(String[] args) throws ParseException {
        String time1 = "20200803"; //年月日
        String time2 = "20200804126739"; //年月日时分秒
        SimpleDateFormat formatter1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        SimpleDateFormat formatter2 = new SimpleDateFormat("yyyyMMddHHmmss");
        SimpleDateFormat formatter3 = new SimpleDateFormat("yyyy-MM-dd");
        SimpleDateFormat formatter4 = new SimpleDateFormat("yyyyMMdd");

        time2 = formatter1.format(formatter2.parse(time2)) ;
        time1 = formatter3.format(formatter4.parse(time1)) ;

        System.out.println(time2);
        System.out.println(time1);
    }

2.效果图

在这里插入图片描述

3.说明

  • 细心的同学可以发现,我的 time2 = “20200804126739” 明显写错了,12:64分,但是API依然为我们正确解析了。一个极小的细节
  • formatter2.parse这个API会将String字符转为Date类型数据,然后就可以进行格式的转变了。其实用法就是书写两个SimpleDateFormat
    对象,一个为 字符串过滤,一个为过滤后设置排版。
  • 注意!!不可以用new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”); 这种类型转 String time2 = "20200804126739"这个数据,会报错!

4.总结

String转Date并且设置排版,需要两个SimpleDateFormat,如果只是单纯的转为Date则不需要,
回顾:

 		String time2 = "20200804126739"; //年月日时分秒
        SimpleDateFormat formatter1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        SimpleDateFormat formatter2 = new SimpleDateFormat("yyyyMMddHHmmss");
        time2 = formatter1.format(formatter2.parse(time2)) ;
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页