我的需要是我有一個Long值,它代表自epoch以來的毫秒值。我希望找出當天和當天之間的天數差異。 我使用Java8的DAYS.between(inputDate, currentDate)
找出由兩個長紀元值表示的兩個日期之間的差異
因爲我已經使用LocalDateTime currentDate = LocalDateTime.now();
但我面臨的問題是,當我轉換long值轉換java8 LocalDateTime的的currentdate。當我使用
LocalDate date = Instant.ofEpochMilli(1490372528)
.atZone(ZoneId.systemDefault())
.toLocalDate();
結果是1970-01-18
而當我在https://www.epochconverter.com/輸入相同的值,它給Fri, 24 Mar 2017 16:22:08 GMT
爲什麼這種差異呢?如何從DAYS.between()中使用long值有效獲取java8日期?
從您鏈接到頁面:* Unix紀元(或Unix時間或POSIX時間或UNIX時間戳),是**的秒數**那已經從1970年1月1日起)*。 ofEpochMilli,正如其名稱所示,預計**毫秒**。使用https://docs.oracle.com/javase/8/docs/api/java/time/Instant.html#ofEpochSecond-long- –