• java时间格式化


    1,CST时间格式化,这个一般是返回值的类型为 Date 类型,如果不做处理,返给前端的就是时间戳,当然也可以更改返回值类型为 String,这样就不用处理了。方法如下:

        /**
        * 格式化时间
        * @param date  Thu Sep 28 11:51:40 CST 2023
        * @return      2023-09-28 11:51:40
        */
       public static String CSTTime(String date)  {
    //    只有年月日
    //    DateFormat formate = new SimpleDateFormat("yyyy-MM-dd");
    //    精确到时分秒
          DateFormat formate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
          DateFormat dateFormate = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.ENGLISH);
          Date dateTime = null;
          try {
             dateTime = dateFormate.parse(date);
          } catch (ParseException e) {
             logger.error("日期格式化失败",e.getMessage(),e);
          }
          String dateString = formate.format(dateTime);
          return dateString;
       }

    2,日期增加汉字,方法如下:

    **** 常量都写在这里,下面的方法用到的常量都在此处 ****

    public static final SimpleDateFormat TIME_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    public static final SimpleDateFormat TIME_FORMAT_Type = new SimpleDateFormat("yyyyMMddHHmmss");
    public static final SimpleDateFormat TIME_FORMAT_MINUTE_Type = new SimpleDateFormat("yyyyMMddHHmm");
    public static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd");
    public static final DateFormat DATE_FORMAT_Z = new SimpleDateFormat("yyyy年MM月dd日");
    public static final DateFormat DATE_FORMAT_d = new SimpleDateFormat("yyyy.MM.dd");
    
    /**
     * 格式化时间
     * @param date 2020-02-02
     * @return     2020年02月02日
     */
    public static String strDate(String date){
       Date parse = null;
       try {
               if (StringUtil.isNotBlank(date)) {
                   parse = DATE_FORMAT.parse(date);
               } else {
                   return "";
               }
       } catch (ParseException e) {
          logger.error("日期格式化失败",e.getMessage(),e);
       }
    
       return DATE_FORMAT_Z.format(parse);
    }

    3,时间格式由 “-” 变成 “.” ,代码如下: 

    /**
     * 格式化时间
     * @param date 2020-02-02
     * @return     2020.02.02
     */
    public static String strDated(String date){
       Date parse = null;
       try {
               if (StringUtil.isNotBlank(date)) {
                   parse = DATE_FORMAT.parse(date);
               } else {
                   return "";
               }
    
       } catch (ParseException e) {
          logger.error("日期格式化失败",e.getMessage(),e);
       }
    
       return DATE_FORMAT_d.format(parse);
    }

    4,斜杆时间并去掉前面的0

    /**
     * 格式化时间
     * @param date 2020-02-02
     * @return     2020/2/2
     */
    public static String strDate6(String date){
       SimpleDateFormat formatter = new SimpleDateFormat("yyyy/M/d");
       Date currentTime = null;
       try {
          currentTime = DATE_FORMAT.parse(date);
       } catch (ParseException e) {
          e.printStackTrace();
       }
       //得到当前系统时间
       return formatter.format(currentTime); //将日期时间格式化
    }

    5,前面加 0

    /**
     * 格式化时间
     * @param date 2020-2-2
     * @return     2020-02-02
     */
    public static String strDate1(String date){
       Date parse = null;
       try {
               if (StringUtil.isNotBlank(date)) {
                   parse = DATE_FORMAT.parse(date);
               } else {
                   return "";
               }
       } catch (ParseException e) {
          logger.error("日期格式化失败",e.getMessage(),e);
       }
       return DATE_FORMAT.format(parse);
    }

    6,没有符合的时间格式转时间,这个不常用

    /**
     * 格式化时间
     * @param date 20230927190901
     * @return     2023-09-27 19:09:01
     */
    public static String strDate2(String date){
       Date parse = null;
       try {
               if (StringUtil.isNotBlank(date)) {
                   parse = TIME_FORMAT_Type.parse(date);
               } else {
                   return "";
               }
       } catch (ParseException e) {
          logger.error("日期格式化失败",e.getMessage(),e);
       }
       return TIME_FORMAT.format(parse);
    }

    7,去掉时分秒

    /**
     * 格式化时间
     * @param date 2020-02-02 19:09:01
     * @return     2020-02-02
     */
    public static String strDate4(String date){
       Date parse = null;
       try {
               if (StringUtil.isNotBlank(date)) {
                   parse = TIME_FORMAT.parse(date);
               } else {
                   return "";
               }
    
       } catch (ParseException e) {
          logger.error("日期格式化失败",e.getMessage(),e);
       }
       return DATE_FORMAT.format(parse);
    }

    8,时间和时间戳相互转换,这个都写在一起了,需要的自己改一下就行

    /**
     *
     * @param timeType    时间格式    yyyy-MM-dd HH:mm:ss
     * @param timestamp   时间戳      1695794616000
     * @param time        时间        2023-09-27 22:22:22
     * @return
     */
    public static void timeAndTimestamp(String timeType,String timestamp,String time){
       SimpleDateFormat simpleDateFormat = new SimpleDateFormat(timeType);
       String format = simpleDateFormat.format(new Date(Long.parseLong(timestamp)));
       System.out.println("时间戳转时间:"+ format );  
       try {
          SimpleDateFormat sdf = new SimpleDateFormat(timeType);
          String s = String.valueOf(sdf.parse(time).getTime()/1000);
          System.out.println("时间转时间戳:"+ s);
       } catch (Exception e) {
          e.printStackTrace();
       }
    }

    结果:

    时间戳转时间:2023-09-27 14:03:36
    时间转时间戳:1695824542
     

  • 相关阅读:
    基于Transformer的目标检测:原理、应用与未来展望
    cpu设计和实现(流水线上的第一条指令)
    Golang开发-new关键字
    GPT-3.5发布:大型语言模型的进化与挑战
    关于SQL的返回行数top
    Keil Assistant 插件 fromelf.exe路径报错及hex、bin、axf、elf文件之间关系
    数据结构知识点总结-特殊矩阵-矩阵的压缩存储
    Tomcat——从安装到使用
    Linux操作系统与Shell编程
    深入理解JavaScript ES8的新特性
  • 原文地址:https://blog.csdn.net/qq_30299243/article/details/133708953