java - 日期中出现错误 : from(java. time.Instant) 无法应用于 (org. Threeten.bp.instant)

标签 java type-mismatch date-conversion java.util.date threetenbp

我正在尝试将 org.thirden.bp.LocalDate 转换为 java.util.Date,并且收到问题标题中提到的错误。

我使用以下进行转换:

Date.from(currentDate.atStartOfDay(ZoneId.systemDefault()).toInstant());

错误:

from(java.time.Instant) in Date cannot be applied to (org.threeten.bp.instant)

我正在尝试转换

  1. 本地日期至今
  2. 日期到本地日期

最佳答案

您的代码基本上是正确的,并且可以与 java.time.LocalDate 一起使用,但不能与 org. Threeten.bp.LocalDate 中同一类的实现一起使用。所以你的选择有两个:

  1. 将所有导入更改为使用 java.time 而不是 org. Threeten.bp 并停止使用向后移植。
  2. 使用 org. Threeten.bp.DateTimeUtils 在旧版日期时间类与 ThreeTen Backport 中的类之间进行转换。

选项 2 的示例:

    LocalDate currentDate = LocalDate.now(ZoneId.of("America/Whitehorse"));
    Date d = DateTimeUtils.toDate(
            currentDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
    System.out.println("" + currentDate + " was converted to " + d);

刚刚在我的计算机上运行时,打印了以下代码段:

2019-06-25 was converted to Tue Jun 25 00:00:00 CEST 2019

DateTimeUtils 还具有用于相反转换的 toInstant(Date) 方法。

链接: DateTimeUtils documentation

关于java - 日期中出现错误 : from(java. time.Instant) 无法应用于 (org. Threeten.bp.instant),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56729718/

相关文章:

sql - Oracle:日期至半年

java - 我怎样才能很好地混合使用 Hibernate 和 Swing

java - JSTL 未使用嵌入式 Jetty 和 jetty-console-maven-plugin 进行评估

java - 当涉及存储函数时,有没有办法提高 Hibernate 生成的查询的性能?

java - 为什么在这个基本的 Java 程序中会出现 InputMismatchException?

asp-classic - 对 asp 变量运行数学运算而不会出现类型不匹配的情况

c++ - 函数指针问题

excel - bb 或 bbbb 在 EN-US TEXT 函数或自定义数字格式掩码中代表什么?

java - 使用 jni4net 从 .dll 生成 .java

mysql - 将秒转换为天、小时、分钟、秒 (MySQL)