本文翻译自:Convert java.time.LocalDate into java.util.Date type

I want to convert java.time.LocalDate into java.util.Date type. 我想将java.time.LocalDate转换为java.util.Date类型。 Because I want to set the date into JDateChooser . 因为我想将日期设置为JDateChooser Or is there any date chooser that supports java.time dates? 或者是否有支持java.time日期的日期选择器?


#1楼

参考:https://stackoom.com/question/1YCwP/将java-time-LocalDate转换为java-util-Date类型


#2楼

Date date = Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant());

假设您的日期选择器使用系统默认时区将日期转换为字符串。


#3楼

In order to create a java.util.Date from a java.time.LocalDate , you have to 要从java.time.LocalDate创建java.util.Date ,您必须这样做

  • add a time to the LocalDate LocalDate添加时间
  • interpret the date and time within a time zone 解释时区内的日期和时间
  • get the number of seconds / milliseconds since epoch 获取自纪元以来的秒数/毫秒数
  • create a java.util.Date 创建一个java.util.Date

The code might look as follows: 代码可能如下所示:

LocalDate localDate = LocalDate.now();
Date date = new Date(localDate.atStartOfDay(ZoneId.of("America/New_York")).toEpochSecond() * 1000);

#4楼

java.time has the Temporal interface which you can use to create Instant objects from most of the the time classes. java.time具有Temporal接口,您可以使用该接口从大多数时间类创建Instant对象。 Instant represents milliseconds on the timeline in the Epoch - the base reference for all other dates and times. Instant表示Epoch中时间轴上的毫秒数 - 所有其他日期和时间的基准参考。

We need to convert the Date into a ZonedDateTime, with a Time and a Zone, to do the conversion: 我们需要将Date转换为带有时间和区域的ZonedDateTime来进行转换:

LocalDate ldate = ...;
Instant instant = Instant.from(ldate.atStartOfDay(ZoneId.of("GMT")));
Date date = Date.from(instant);

#5楼

Here's a utility class I use to convert the newer java.time classes to java.util.Date objects and vice versa: 这是我用来将较新的java.time类转换为java.util.Date对象的实用程序类,反之亦然:

import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.Date;public class DateUtils {public static Date asDate(LocalDate localDate) {return Date.from(localDate.atStartOfDay().atZone(ZoneId.systemDefault()).toInstant());}public static Date asDate(LocalDateTime localDateTime) {return Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant());}public static LocalDate asLocalDate(Date date) {return Instant.ofEpochMilli(date.getTime()).atZone(ZoneId.systemDefault()).toLocalDate();}public static LocalDateTime asLocalDateTime(Date date) {return Instant.ofEpochMilli(date.getTime()).atZone(ZoneId.systemDefault()).toLocalDateTime();}
}

Edited based on @Oliv comment. 根据@Oliv评论编辑。


#6楼

You can use java.sql.Date.valueOf() method as: 您可以使用java.sql.Date.valueOf()方法:

Date date = java.sql.Date.valueOf(localDate);

No need to add time and time zone info here because they are taken implicitly. 无需在此处添加时间和时区信息,因为它们是隐式使用的。
See LocalDate to java.util.Date and vice versa simpliest conversion? 请参阅LocalDate到java.util.Date,反之亦然最简单的转换?

将java.time.LocalDate转换为java.util.Date类型相关推荐

  1. Java.util.Date类型的转化成为数据库中的Date类型。

    最完整的一个网页:http://www.zxbc.cn/html/20080905/65272.html 作者:天涯 来源:中国自学编程网 发布日期:1220576012 在JDK 1.1后,java ...

  2. 计算机二级日期格式,09年计算机二级辅导:指定格式的日期字符串转化成java.util.Date类型日期对象...

    09年计算机二级辅导:指定格式的日期字符串转化成java.util.Date类型日期对象 分类:计算机等级| 更新时间:2008-10-16| 来源:教育联展网 将未指定格式的日期字符串转化成java ...

  3. java 指定格式的date_指定格式的日期字符串转化成java.util.Date类型日期对象

    将未指定格式的日期字符串转化成java.util.Date类型日期对象,代码如下: import java.text.DateFormat; import java.text.ParseExcepti ...

  4. 解决axis2处理java.util.Date类型对象时丢弃时间部分的问题

    我目前在做的一个项目以axis2为webservice框架,客户端和服务器端要传输很多复杂对象,在这方面,axis2做得不错,基本满足了我的需要,但当我把客户端提供给要使用的同事时,同事发现了一个问题 ...

  5. JAVA String时间转化为数据库Date类型

    JAVA String时间转化为数据库Date类型 String date="2017-01-12 18:00:00"; java.text.SimpleDateFormat fo ...

  6. java基础--java.util.Date类型小结

    首先先来了解一下Date数据类型: . Date类型通常要和另一个 java.text.SimpleDateFormat类联合使用. 把long-->Date: public Date(long ...

  7. java 日期是否合法_java 中 Date 类型快判断日期是否合法.

    // 如果日期不合法,则抛异常try {String date_str = 5555-22-33;SimpleDateFormat format=new SimpleDateFormat(yyyy-M ...

  8. java 判断时间合法_java 中 Date 类型快判断日期是否合法.

    // 如果日期不合法,则抛异常 try { String date_str = "5555-22-33"; SimpleDateFormat format=new SimpleDa ...

  9. Java8中 LocalDate和java.sql.Date的相互转换

    一.简述 首先,Java 8引入了java.time.LocalDate来表示一个没有时间的日期.其次,使用Java 8版本,还需要更新java.sql.Date,以便为LocalDate提供支持,包 ...

最新文章

  1. 中蒙最大陆路口岸2018年运行中欧班列1052列
  2. 20175318 2018-2019-2 《Java程序设计》第4周学习总结
  3. 老大难的分布式锁与幂等性问题,如何解决?长文干货!
  4. 2-hadoop-Hadoop以及生态
  5. 年轻人开始“反算法”
  6. 赛锐信息:优化SAP系统运行时的建议
  7. eclipse创建maven
  8. 仅用 10 天设计的 JavaScript,凭什么成为程序员最受欢迎的编程语言?
  9. Android 自定义ToggleButton+用SharedPreferences保存用户配置
  10. 物理综合:Compile
  11. [javase学习笔记]-8.8 构造代码块
  12. HttpClient4.X发送Get请求的url参数拼接
  13. (解读)什么是渗透测试(Penetration Testing)?
  14. 计算机光纤接口网卡,光纤网卡是什么?
  15. wlacm 铲雪车snow 题解
  16. 发送报警信息到微信公众号
  17. 软件工程(1) CSDN花神生涯
  18. 凹凸技术揭秘 · Tide 研发平台 · 布局研发新基建
  19. jupyther_python基础系列 09 第九章 有益的探索
  20. Python基础教程读书笔记(第5章—第6章:条件、循环和其他语句;抽象)

热门文章

  1. GreenDao 使用方法:
  2. Chrome 调试 Android WebView 网页
  3. Android 内存泄漏问题分析 指南
  4. 关于我的Android 博客
  5. Android Jetpack 组件之 Lifecycle源码
  6. JAVA中复制数组的方法
  7. 一般家用监控多少钱_家用煤气灶价格一般是多少 燃气灶安装的流程
  8. Android滑动冲突解决方法
  9. (0002) iOS 开发之开发者iOS 10 正式版体验报告
  10. [转] 利用CORS实现跨域请求