//LocalDateTime转String
LocalDateTime dateTime = LocalDateTime.now();
DateTimeFormatter fmt24 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String dateStr24 = dateTime.format(fmt24);
System.out.println("LocalDateTime转String[pattern](24小时制):"+dateStr24)
//localDateTime转localDate
localDate = dateTime.toLocalDate()
//获取当前时间本月的第一天和最后一天时间
public static final String MinTime = "T00:00:00";
public static final String MaxTime = "T23:59:59.999999999";
/**
* 本月的开始时间
* @param today 当前时间
* @param isFirst [true 表示开始时间,false表示结束时间]
*/
public static LocalDateTime getStartOrEndDayOfMonth(LocalDate today, Boolean isFirst){
String time = MinTime;
Month month = today.getMonth();
int length = month.length(today.isLeapYear());
if (isFirst) {
today = LocalDate.of(today.getYear(), month, 1);
} else {
today = LocalDate.of(today.getYear(), month, length);
time = MaxTime;
}
return LocalDateTime.parse(today.toString() + time);
}
//获取当前时间的上个月或下个月时间
LocalDateTime lastDateTime = dateTime.minus(1,ChronoUnit.MONTHS);
LocalDateTime lastDateTime = dateTime.plus(1,ChronoUnit.MONTHS);
//将LocalDateTime转化为年月
String date = LocalDateTime.now().getYear()+String.format("%02d", LocalDateTime.now().getMonthValue());
"%02d":month格式化为至少2位十进制整数
例如:月份为5,输出"05";月份为11,输出"11"
//date和localDateTime互转
date -> localDateTime:
ZoneId zoneId = ZoneId.systemDefault()localDateTime -> date
LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault())