网上很多,但是用的SimpleDateFormat ,这玩意线程不安全,所以我用的是FastDateFormat。
org.apache.commons.lang3.time里面的。
- yyyyMMdd -> yyyy-MM-dd
/**
* 20220304 -> 2022-03-04
*
* @param date int
* @return String
*/
public static String dateFormat(Integer date) {
Date formatDate = null;
try {
formatDate = FastDateFormat.getInstance("yyyyMMdd").parse(String.valueOf(date));
} catch (Exception e) {
logger.error("dateFormat fail mag->" + e.getMessage());
return "";
}
return FastDateFormat.getInstance("yyyy-MM-dd").format(formatDate);
}
-
yyyy-MM-dd -> yyyyMMdd
反过来就行了 -
时间戳 -> yyyyMMdd
/**
* 根据时间戳转指定格式的日期
*
* @param timestamp 1597828330 10位
* @param pattern 如:yyyy-MM-dd HH:mm:ss
* @return String
*/
public static String formatDate(int timestamp, String pattern) {
return FastDateFormat.getInstance(pattern).format((long) timestamp * 1000);
}