gpt4 book ai didi

java - 在 java.time (Java 8) 中正确地将时间转换为毫秒

转载 作者:太空狗 更新时间:2023-10-29 23:03:09 25 4
gpt4 key购买 nike

我一直在尝试使用 Java 8 中内置的 java.time 包将“DateTime”转换为毫秒。

但我没能正确地做到这一点。我正在尝试将“29/Jan/2015:18:00:00”转换为毫秒。以下是我试过的东西

Instant instant = Instant.parse("2015-01-29T18:00:00.0z");
Long instantMilliSeconds = Long.parseLong(instant.getEpochSecond() + "" + instant.get(ChronoField.MILLI_OF_SECOND));
System.out.println(new Date(instantMilliSeconds)); // prints Sun Jun 14 05:06:00 PDT 1970

我尝试使用 LocalDateTime,但找不到有效转换为毫秒的方法。我并不是说这是最好的方法,如果您知道更好的方法,我将不胜感激。

最佳答案

你应该使用 Instant::toEpochMilli .


System.out.println(instant.toEpochMilli());
System.out.println(instant.getEpochSecond());
System.out.println(instant.get(ChronoField.MILLI_OF_SECOND));

打印

1422554400000
1422554400
0

您的版本不起作用,因为您忘记用额外的零填充 instant.get(ChronoField.MILLI_OF_SECOND) 以将其填充到 3 个位置。

关于java - 在 java.time (Java 8) 中正确地将时间转换为毫秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28466845/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com