LocalDateTime 转时间戳

    LocalDate date = LocalDate.now().minusDays(20);
    LocalDateTime time = LocalDateTime.of(date.getYear(), date.getMonth(), date.getDayOfMonth(), 0, 0, 0);
    // 将指定时间 转换时间戳
    long temp = time.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli() / 1000;
    System.out.println(temp);  //1632240000
    System.out.println(time.toInstant(ZoneOffset.of("+8")).toEpochMilli()); //1632240000000
    System.out.println(time.toInstant(ZoneOffset.ofHours(8)).toEpochMilli()); //1632240000000

    // 当前时间转成时间戳
    System.out.println(Instant.now().toEpochMilli()); //1634023309759

    //1634019741
    System.out.println(LocalDateTime.ofEpochSecond(temp, 0, ZoneOffset.ofHours(8))); //2021-09-22T00:00

    // 将时间戳转换成时间
    System.out.println(LocalDateTime.ofEpochSecond(1634019741, 0, ZoneOffset.of("+8"))); //2021-10-12T14:22:21

你可能感兴趣的:(java)