1. 当前时间的时间戳
// 获取毫秒数
Long milliSecond = LocalDateTime.now().toInstant(ZoneOfset.of("+8")).toEpochMilli();
// 当前毫秒
Long milliSecond = System.currentTimeMillis();
// 获取当前秒数
Long second = LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8"));
2.LocalDateTime 和 String互转
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
DateTimeFormatter fmt1 = DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS");
DateTimeFormatter fmt2 = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
// 字符串转时间
String dateTimeStr = "2021-02-28 14:11:15";
LocalDateTime dateTime = LocalDateTime.parse(dateTimeStr, fmt);
//时间转字符串格式化
Long timeStamp = 1614773350L;
Instant instant = Instant.ofEpochSecond(timestamp);
LocalDateTime ldt = LocalDateTime.ofInstant(timestamp, ZoneId.systemDefault());
String dateTimeStr = ldt.format(fmt1);
3. 时间戳转LocalDateTime
// 时间戳转LocalDateTime
Long timeStamp = 1614773350L;
Instant instant = Instant.ofEpochSecond(timeStamp);
LocalDateTime dateTime = LocalDateTime.ofInstant(instant,ZoneId.systemDefault());
4. 时间戳 转 ISO8601时间格式
//时间转字符串格式化
Long timeStamp = 1614773350L;
try {
LocalDateTime dt1 = LocalDateTime.ofEpochSecond(timestamp,0, ZoneOffset.ofHours(8));;
ZoneOffset offset = ZoneOffset.of("+8");
OffsetDateTime date = OffsetDateTime.of(dt1,offset);
DateTimeFormatter formatter2=DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
String unixTime=date.format(formatter2);
} catch (DateTimeParseException ex) {
ex.printStackTrace();
}