java获取指定日期的时间戳
时间: 2023-05-04 08:02:24 浏览: 214
java 获取指定日期(带毫秒)13位时间戳
在Java中获取指定日期的时间戳可以使用java.time包中的LocalDateTime类和Instant类。
首先,需要创建一个LocalDateTime对象,表示指定日期和时间。可以使用LocalDateTime.of()方法创建一个包含年、月、日、小时、分钟和秒的LocalDateTime对象。例如:
LocalDateTime dateTime = LocalDateTime.of(2022, 6, 30, 23, 59, 59);
接下来,需要将这个LocalDateTime对象转换为时间戳。可以使用toEpochSecond()方法将LocalDateTime对象转换为从1970年1月1日00:00:00开始的秒数。例如:
long second = dateTime.toEpochSecond(ZoneOffset.of("+8"));
但是这里的toEpochSecond()方法只能获取到秒级别的时间戳,如果需要获取毫秒级别的时间戳,则需要将秒数乘以1000。例如:
long millisecond = dateTime.toEpochSecond(ZoneOffset.of("+8")) * 1000;
同时,在转换为时间戳时需要注意时区。toEpochSecond()方法需要一个ZoneOffset对象作为参数,该对象表示时区的偏移量。ZoneOffset.UTC表示世界标准时间,ZoneOffset.of("+8")表示东八区。
最后,可以将时间戳转换为字符串输出。例如:
String timestamp = String.valueOf(millisecond);
System.out.println("指定日期的时间戳为:" + timestamp);
综上所述,通过LocalDateTime类和Instant类即可轻松获取指定日期的时间戳。
阅读全文