java - 从日期开始的本地时间

标签 java date localtime

我正在尝试将 Date 实例转换为 LocalTime 实例。

// Create the Date
Date date = format.parse("2011-02-18 05:00:00.0");    

// Convert to Calendar
Calendar cal = Calendar.getInstance();
cal.setTime(date);

// Convert Calendar to LocalTime
Instant instant = Instant.ofEpochMilli(cal.getTimeInMillis());
LocalTime convert = LocalDateTime.ofInstant(instant, ZoneId.systemDefault()).toLocalTime();

我没有收到编译器错误,但 LocalTime 实例值是错误的。

我认为它不起作用,因为 Date 将时间存储在 fasttime 而不是 cdate 中。

我使用的是 JDK 1.8 版。

最佳答案

这也很简单:

LocalTime time = LocalDateTime.ofInstant(new Date().toInstant(),
    ZoneId.systemDefault()).toLocalTime();

关于java - 从日期开始的本地时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29927362/

相关文章:

python - 将 UTC 日期时间字符串转换为本地日期时间

java - 在android中获取本地日期一样长,可能会感到困惑?

java - Kotlin:将日期字符串转换为 ISO 字符串

java - 尝试将 String 转换为 LocalDate 时出现 "... is not public in org.bp.threeten.format.DateTimeFormatter"错误

java - 如何反转 GRAL 轴(java 数据图)

mysql - 查询以查看订阅是否在两个日期范围内有效

java - 如何比较Java LocalTime中的时间?

java - 在 java 中使用 Apache Poi 进行公式计算

Java 元素列表

java - 继续获取: Neither BindingResult nor plain target object for bean name 'index' available as request attribute