java 时间工具类(格式化日期)

  • 场景:时间格式化
  • 配合CommonLang3 时间工具类使用

import lombok.extern.slf4j.Slf4j;
import org.springframework.util.StringUtils;

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

/**
 * Coding by 李炯 on 2019/9/25 19:37
 * 时间工具类
 */
@Slf4j
public class DateUtil {

    public static final String DEFAULT_FORMAT = "yyyy-MM-dd HH:mm:ss";// 时间格式
    public static final String DEFAULT_FORMAT1 = "yyyy/MM/dd HH:mm:ss";// 时间格式1
    public static final String DEFAULT_FORMATS = "yyyy-MM-dd";
    public static final String DATE_FOMATE_YYYYMMDDHHMMSS = "yyyyMMddHHmmss";
    public static final String Message_TIME = "yyyy年MM月dd日HH点mm分";

    /**
     * 格式化时间(Date 转换成String)
     *
     * @param date   时间
     * @param format 时间格式 如: DEFAULT_FORMAT= "yyyy-MM-dd HH:mm:ss"
     * @return 字符串
     */
    public static String format(Date date, String format) {
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        return sdf.format(date);
    }

    /**
     * 字符串格式化为时间
     *
     * @param dateStr  时间字符串
     * @param format 时间格式 如:DEFAULT_FORMAT1 = "yyyy/MM/dd HH:mm:ss";// 时间格式1
     * @return
     */
    public static Date parseDate(String dateStr, String format) {
        Date date = null;
        if (!StringUtils.isEmpty(dateStr)) {
            SimpleDateFormat sdf = new SimpleDateFormat(format);
            try {
                date = sdf.parse(dateStr);
            } catch (ParseException e) {
                log.error(e.getMessage(), e);
            }
        }
        return date;
    }

}

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Java 提供了 `java.text.SimpleDateFormat` 类,用于将日期格式化为字符串,也可以将字符串解析为日期。下面是一个简单的时间格式化工具类: ```java import java.text.SimpleDateFormat; import java.util.Date; public class DateFormatUtils { public static final String FORMAT_YMD = "yyyy-MM-dd"; public static final String FORMAT_YMDHM = "yyyy-MM-dd HH:mm"; public static final String FORMAT_YMDHMS = "yyyy-MM-dd HH:mm:ss"; public static String format(Date date, String format) { SimpleDateFormat sdf = new SimpleDateFormat(format); return sdf.format(date); } public static Date parse(String str, String format) throws Exception { SimpleDateFormat sdf = new SimpleDateFormat(format); return sdf.parse(str); } } ``` 使用示例: ```java Date now = new Date(); String strDate = DateFormatUtils.format(now, DateFormatUtils.FORMAT_YMDHMS); System.out.println(strDate); // 输出:2021-09-01 14:30:00 String str = "2021-09-01 14:30:00"; Date date = DateFormatUtils.parse(str, DateFormatUtils.FORMAT_YMDHMS); System.out.println(date); // 输出:Wed Sep 01 14:30:00 CST 2021 ``` 在使用时,只需要调用 `format` 方法将日期格式化为字符串,或者调用 `parse` 方法将字符串解析为日期。`format` 方法的第二个参数传入需要的日期格式,如 `FORMAT_YMDHMS`,`parse` 方法的第二个参数也需要传入对应的日期格式。 注意,`SimpleDateFormat` 是线程不安全的,要确保线程安全,可以使用 `ThreadLocal` 或者在每次使用时创建一个新的 `SimpleDateFormat` 对象。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ladymorgana

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值