日期时间工具类
java
/**
* <p>
* DateTime 工具类
* </p>
*
* @author Gnerv LiGen
*/
public class DateTimeTools {
private DateTimeTools() {
}
public static LocalDateTime nowUtc() {
return LocalDateTime.now(ZoneOffset.UTC);
}
/**
* 当前时间的时间戳 时区采用 0 时区 使用时注意转换时区
*/
public static Long currentTimeMillis() {
return timeMillis(LocalDateTime.now(ZoneOffset.UTC));
}
public static Long timeMillis(LocalDateTime localDateTime) {
return localDateTime.atZone(ZoneOffset.UTC).toInstant().toEpochMilli();
}
public static String formatter() {
return formatter(LocalDateTime.now());
}
public static String formatter(LocalDateTime localDateTime) {
return formatter(localDateTime, HYPHEN_SPACE_COLON_SPACE_YYYY_MM_DD_HH_MM_SS_SSS);
}
public static String formatter(LocalDateTime localDateTime, String dateTimeFormatter) {
return formatter(localDateTime, DateTimeFormatter.ofPattern(dateTimeFormatter));
}
public static String formatter(String dateTimeFormatter) {
return formatter(LocalDateTime.now(), DateTimeFormatter.ofPattern(dateTimeFormatter));
}
public static String formatter(DateTimeFormatter dateTimeFormatter) {
return formatter(LocalDateTime.now(), dateTimeFormatter);
}
public static String formatter(LocalDateTime localDateTime, DateTimeFormatter dateTimeFormatter) {
return dateTimeFormatter.format(localDateTime);
}
public static LocalDateTime parse(String datetime) {
return LocalDateTime.parse(datetime);
}
public static LocalDateTime parse(String datetime, String formatter) {
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(formatter);
return parse(datetime, dateTimeFormatter);
}
public static LocalDateTime parse(String datetime, DateTimeFormatter dateTimeFormatter) {
return LocalDateTime.parse(datetime, dateTimeFormatter);
}
public static LocalDateTime create(int year) {
return create(year, 1, 1, 0, 0, 0, 0);
}
public static LocalDateTime create(int year, int month) {
return create(year, month, 1, 0, 0, 0, 0);
}
public static LocalDateTime create(int year, int month, int dayOfMonth) {
return create(year, month, dayOfMonth, 0, 0, 0, 0);
}
public static LocalDateTime create(int year, int month, int dayOfMonth, int hour) {
return create(year, month, dayOfMonth, hour, 0, 0, 0);
}
public static LocalDateTime create(int year, int month, int dayOfMonth, int hour, int minute) {
return create(year, month, dayOfMonth, hour, minute, 0, 0);
}
public static LocalDateTime create(int year, int month, int dayOfMonth, int hour, int minute, int second) {
return create(year, month, dayOfMonth, hour, minute, second, 0);
}
public static LocalDateTime create(int year, int month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond) {
return LocalDateTime.of(year, month, dayOfMonth, hour, minute, second, nanoOfSecond);
}
}