Java LocalDateTime 和 Date 互转
目录
1 LocalDateTime -> Date
// DateTimeFormatter / SimpleDateFormat
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// LocalDateTime -> Date
LocalDateTime time1 = LocalDateTime.now();
Date date = Date.from(time1.atZone(ZoneId.systemDefault()).toInstant());
// Print
System.out.println(format.format(date)); //2022-04-17 18:16:47
2 Date -> LocalDateTime
// DateTimeFormatter / SimpleDateFormat
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// Date -> LocalDateTime
LocalDateTime time2 = new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
// Print
System.out.println(formatter.format(time2));//2022-04-17 18:21:27
3 str -> LocalDateTime
// DateTimeFormatter
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss", Locale.US);
// str -> LocalDateTime
LocalDateTime time2 = LocalDateTime.parse("2022-04-13 16:01:42", formatter);
// Print
System.out.println(formatter.format(time2));//2022-04-13 16:01:42
4 LocalDateTime -> str
// DateTimeFormatter
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss", Locale.US);
// LocalDateTime
LocalDateTime time2 = LocalDateTime.now();
// Print
System.out.println(formatter.format(time2));//2022-04-17 18:25:10