All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.chobit.commons.utils.DateKit Maven / Gradle / Ivy

There is a newer version: 0.1.3.5
Show newest version
package org.chobit.commons.utils;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import static org.chobit.commons.constans.CommonConstants.COMMON_DATETIME_PATTERN;
import static org.chobit.commons.constans.CommonConstants.COMMON_DATE_PATTERN;


/**
 * 日期工具类
 *
 * @author robin
 */
public final class DateKit {


    private static final Logger logger = LoggerFactory.getLogger(DateKit.class);

    /**
     * 格式化日期对象
     *
     * @param date    日期对象
     * @param pattern 日期格式
     * @return 格式化后的日期字符串
     */
    public static String format(Date date, String pattern) {
        return new SimpleDateFormat(pattern).format(date);
    }


    /**
     * 格式化日期对象,默认格式:yyyy-MM-dd HH:mm:ss
     *
     * @param date 日期对象
     * @return 格式化后的日期字符串
     */
    public static String format(Date date) {
        return format(date, COMMON_DATETIME_PATTERN);
    }


    /**
     * 格式化日期对象,默认格式:yyyy-MM-dd
     *
     * @param date 日期对象
     * @return 格式化后的日期字符串
     */
    public static String formatDate(Date date) {
        return format(date, COMMON_DATE_PATTERN);
    }


    /**
     * 解析日期时间字符串
     *
     * @param dateStr 日期字符串
     * @param pattern 格式
     * @return 日期对象
     */
    public static Date parse(String dateStr, String pattern) {
        try {
            return new SimpleDateFormat(pattern).parse(dateStr);
        } catch (ParseException e) {
            logger.error("Parse date string error, source:{}, pattern:{}, e", dateStr, pattern);
            return null;
        }
    }


    /**
     * 解析日期时间字符串,默认格式:yyyy-MM-dd HH:mm:ss
     *
     * @param dateStr 日期字符串
     * @return 日期对象
     */
    public static Date parse(String dateStr) {
        return parse(dateStr, COMMON_DATETIME_PATTERN);
    }


    /**
     * 解析日期字符串,默认格式:yyyy-MM-dd
     *
     * @param dateStr 日期字符串
     * @return 日期对象
     */
    public static Date parseDate(String dateStr) {
        return parse(dateStr, COMMON_DATE_PATTERN);
    }


    private DateKit() {
        throw new UnsupportedOperationException("Private constructor, cannot be accessed.");
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy