场景

前端在往后端传递时间参数时,传递的是标准时间格式的字符串。

比如下面的lxyf参数

 

 怎样将其转换为Date格式。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

调用如下转换格式的方法

Date lxyfDate = str2Date(lxyf);

方法的具体实现

    public  Date str2Date(String dateString) {

         String FORMAT_STRING = "yyyy-MM-dd HH:mm:ss";

         String[] REPLACE_STRING = new String[]{"GMT+0800", "GMT+08:00"};

         String SPLIT_STRING = "(中国标准时间)";

        try {
            dateString = dateString.split(Pattern.quote(SPLIT_STRING))[0].replace(REPLACE_STRING[0], REPLACE_STRING[1]);
            SimpleDateFormat sf1 = new SimpleDateFormat("E MMM dd yyyy HH:mm:ss z", Locale.US);
            Date date = sf1.parse(dateString);
            return date;
        } catch (Exception e) {
            throw new RuntimeException("时间转化格式错误" + "[dateString=" + dateString + "]" + "[FORMAT_STRING=" + FORMAT_STRING + "]");
        }
    }

 

posted on 2020-08-13 15:36  霸道流氓  阅读(8525)  评论(0编辑  收藏  举报