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
// 时间戳转LocalDateTimeLong 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();}