zoukankan      html  css  js  c++  java
  • LocalDateTime

    /**
     * <html>
     * <body>
     *  <P> Copyright 1994 JsonInternational</p>
     *  <p> All rights reserved.  - https://github.com/Jasonandy/Java-Core-Advanced </p>
     *  <p> Created by Jason</p>
     *  </body>
     * </html>
     */
    package cn.ucaner.core.time;
    
    import java.time.LocalDateTime;
    import java.time.format.DateTimeFormatter;
    
    /**
    * @Package:cn.ucaner.core.time   
    * @ClassName:TimeUtil   
    * @Description:   <p> 基于 JDK 8 time包的时间工具类</p>
    * @Author: - Jason   
    * @CreatTime:2018年4月5日 下午12:17:55   
    * @Modify By:   
    * @ModifyTime:  2018年4月5日
    * @Modify marker:   
    * @version    V1.0
     */
    public final class TimeUtil {
    
        /**
         * 获取默认时间格式: yyyy-MM-dd HH:mm:ss
         */
        private static final DateTimeFormatter DEFAULT_DATETIME_FORMATTER = TimeFormat.LONG_DATE_PATTERN_LINE.formatter;
    
        private TimeUtil() {
        }
    
        /**
         * String 转时间
         * @param timeStr
         * @return
         */
        public static LocalDateTime parseTime(String timeStr) {
            return LocalDateTime.parse(timeStr, DEFAULT_DATETIME_FORMATTER);
        }
    
        /**
         * String 转时间
         * @param timeStr
         * @param format  时间格式
         * @return
         */
        public static LocalDateTime parseTime(String timeStr, TimeFormat format) {
            return LocalDateTime.parse(timeStr, format.formatter);
        }
    
        /**
         * 时间转 String
         * @param time
         * @return
         */
        public static String parseTime(LocalDateTime time) {
            return DEFAULT_DATETIME_FORMATTER.format(time);
        }
    
        /**
         * 时间转 String
         * @param time
         * @param format 时间格式
         * @return
         */
        public static String parseTime(LocalDateTime time, TimeFormat format) {
            return format.formatter.format(time);
        }
    
        /**
         * 获取当前时间
         * @return
         */
        public static String getCurrentDatetime() {
            return DEFAULT_DATETIME_FORMATTER.format(LocalDateTime.now());
        }
    
        /**
         * 获取当前时间
         * @param format 时间格式
         * @return
         */
        public static String getCurrentDatetime(TimeFormat format) {
            return format.formatter.format(LocalDateTime.now());
        }
    
        /**
         * 时间格式
         */
        public enum TimeFormat {
    
            /**
             * 短时间格式
             */
            SHORT_DATE_PATTERN_LINE("yyyy-MM-dd"),
            SHORT_DATE_PATTERN_SLASH("yyyy/MM/dd"),
            SHORT_DATE_PATTERN_DOUBLE_SLASH("yyyy\MM\dd"),
            SHORT_DATE_PATTERN_NONE("yyyyMMdd"),
    
            /**
             * 长时间格式
             */
            LONG_DATE_PATTERN_LINE("yyyy-MM-dd HH:mm:ss"),
            LONG_DATE_PATTERN_SLASH("yyyy/MM/dd HH:mm:ss"),
            LONG_DATE_PATTERN_DOUBLE_SLASH("yyyy\MM\dd HH:mm:ss"),
            LONG_DATE_PATTERN_NONE("yyyyMMdd HH:mm:ss"),
    
            /**
             * 长时间格式 带毫秒
             */
            LONG_DATE_PATTERN_WITH_MILSEC_LINE("yyyy-MM-dd HH:mm:ss.SSS"),
            LONG_DATE_PATTERN_WITH_MILSEC_SLASH("yyyy/MM/dd HH:mm:ss.SSS"),
            LONG_DATE_PATTERN_WITH_MILSEC_DOUBLE_SLASH("yyyy\MM\dd HH:mm:ss.SSS"),
            LONG_DATE_PATTERN_WITH_MILSEC_NONE("yyyyMMdd HH:mm:ss.SSS");
    
            private transient DateTimeFormatter formatter;
    
            TimeFormat(String pattern) {
                formatter = DateTimeFormatter.ofPattern(pattern);
            }
        }
    }
  • 相关阅读:
    大小端判断
    引用计数
    STL_ALGORITHM_H
    书单一览
    GIT版本控制系统(二)
    JS随机数生成算法
    STL学习笔记--临时对象的产生与运用
    乱序优化与GCC的bug
    你的灯亮着吗?
    交换机和路由器
  • 原文地址:https://www.cnblogs.com/jasonandy/p/9821515.html
Copyright © 2011-2022 走看看