import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Date;
public class DateUtil {
public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";
public static final String YYYY_MM_DD = "yyyy-MM-dd";
private static final String DATE_ERROR_MSG = "日期格式不正确!当前日期格式:";
private static final String STR_ERROR_MSG = "字符串格式不正确!当前字符串格式:";
public static void main(String[] args) {
System.err.println(dateToStr(new Date(), "yyyy-MM-dd HH:mm:ss"));
System.err.println(dateToStr(new Date()));
System.err.println(localDateTimeToStr(LocalDateTime.now(), YYYY_MM_DD_HH_MM_SS));
System.err.println(localDateTimeToStr(LocalDateTime.now()));
System.err.println(strToDate("2023-03-21 14:02:59"));
System.err.println(strToDate("2023-03-21", YYYY_MM_DD));
System.err.println(strToLocalDateTime("2023-03-21 14:20:42"));
System.err.println(dateToLocalDateTime(new Date()));
System.err.println(localDateTimeToDate(LocalDateTime.now()));
}
public static String dateToStr(Date date) {
return dateToStr(date, YYYY_MM_DD_HH_MM_SS);
}
public static String dateToStr(Date date, String format) {
try {
return new SimpleDateFormat(format).format(date);
} catch (RuntimeException e) {
throw new RuntimeException(DATE_ERROR_MSG + format);
}
}
public static Date strToDate(String dateStr) {
return strToDate(dateStr, YYYY_MM_DD_HH_MM_SS);
}
public static Date strToDate(String dateStr, String format) {
try {
return new SimpleDateFormat(format).parse(dateStr);
} catch (ParseException e) {
throw new RuntimeException(STR_ERROR_MSG + dateStr);
}
}
public static String localDateTimeToStr(LocalDateTime localDateTime) {
return localDateTimeToStr(localDateTime, YYYY_MM_DD_HH_MM_SS);
}
public static String localDateTimeToStr(LocalDateTime localDateTime, String format) {
try {
return DateTimeFormatter.ofPattern(format).format(localDateTime);
} catch (RuntimeException e) {
throw new RuntimeException(DATE_ERROR_MSG + format);
}
}
public static LocalDateTime strToLocalDateTime(String localDateTimeStr) {
try {
return LocalDateTime.parse(localDateTimeStr, DateTimeFormatter.ofPattern(YYYY_MM_DD_HH_MM_SS));
} catch (RuntimeException e) {
throw new RuntimeException(STR_ERROR_MSG + localDateTimeStr);
}
}
public static LocalDateTime strToLocalDateTime(String localDateTimeStr, String format) {
try {
return LocalDateTime.parse(localDateTimeStr, DateTimeFormatter.ofPattern(format));
} catch (RuntimeException e) {
throw new RuntimeException(STR_ERROR_MSG + localDateTimeStr);
}
}
public static LocalDateTime dateToLocalDateTime(Date date) {
return strToLocalDateTime(dateToStr(date));
}
public static Date localDateTimeToDate(LocalDateTime localDateTime) {
return strToDate(localDateTimeToStr(localDateTime));
}
}
输出结果:Date、字符串、LocalDateTime时间转换
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 不知道为啥,int型 时间戳(秒)通过new Date转换后得到的字符串一直是1970年!! 例如1、获取系统的当...
- 1.数据格式(字符串) ExtraData={"type":"1","id":"10030101","title"...
- “yyyy-MM-dd HH:mm:ss” 这是常用的时间显示格式,表示了“年-月-日 时:分:秒” 1、日期字符...
- 在软件开发中,我们会经常遇到各种时间的显示及判断,这就需要我们对获取的数据进行转换。 “yyyy-MM-dd HH...
- 一、函数介绍 1、date_format(date, format) 将date按照formatj进行格式化,da...