Java8 LocalDateTime获取时间戳(毫秒/秒)、LocalDateTime与String互转、Date与LocalDateTime互转

Java8 LocalDateTime获取时间戳(毫秒/秒)、LocalDateTime与String互转、Date与LocalDateTime互转本文目前提供:LocalDateTime获取时间戳(毫秒/秒)、LocalDateTime与String互转、Date与LocalDateTime互转文中都使用的时区都是东8区,也就是北京时间。这是为了防止服务器设置时区错误时导致时间不对,如果您是其他时区,请自行修改1.LocalDateTime获取毫秒数​//获取秒数Longsecond=LocalDateT…

大家好,又见面了,我是你们的朋友全栈君。

 

本文收录在猪哥GitHub:https://github.com/pig6/Java 中,本项目收集一线大厂面试、实战、Java学习路线等。

本文目前提供:LocalDateTime获取时间戳(毫秒/秒)、LocalDateTime与String互转、Date与LocalDateTime互转

文中都使用的时区都是东8区,也就是北京时间。这是为了防止服务器设置时区错误时导致时间不对,如果您是其他时区,请自行修改

 

1.LocalDateTime获取毫秒数​

//获取秒数
Long second = LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8"));
//获取毫秒数
Long milliSecond = LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli();

 

2.LocalDateTime与String互转

//时间转字符串格式化
 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS");
 String dateTime = LocalDateTime.now(ZoneOffset.of("+8")).format(formatter);

//字符串转时间
String dateTimeStr = "2018-07-28 14:11:15";
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime dateTime = LocalDateTime.parse(dateTimeStr, df);

 

3.Date与LocalDateTime互转

    //将java.util.Date 转换为java8 的java.time.LocalDateTime,默认时区为东8区
    public static LocalDateTime dateConvertToLocalDateTime(Date date) {
        return date.toInstant().atOffset(ZoneOffset.of("+8")).toLocalDateTime();
    }

   
    //将java8 的 java.time.LocalDateTime 转换为 java.util.Date,默认时区为东8区
    public static Date localDateTimeConvertToDate(LocalDateTime localDateTime) {
        return Date.from(localDateTime.toInstant(ZoneOffset.of("+8")));
    }


    /**
     * 测试转换是否正确
     */
    @Test
    public void testDateConvertToLocalDateTime() {
        Date date = DateUtils.parseDate("2018-08-01 21:22:22", DateUtils.DATE_YMDHMS);
        LocalDateTime localDateTime = DateUtils.dateConvertToLocalDateTime(date);
        Long localDateTimeSecond = localDateTime.toEpochSecond(ZoneOffset.of("+8"));
        Long dateSecond = date.toInstant().atOffset(ZoneOffset.of("+8")).toEpochSecond();
        Assert.assertTrue(dateSecond.equals(localDateTimeSecond));
    }

更多Java优质文章,请关注猪哥微信公众号:猪哥Java!
 

Java8 LocalDateTime获取时间戳(毫秒/秒)、LocalDateTime与String互转、Date与LocalDateTime互转

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/131976.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • turtle模块制作的弹球,面向对象,python海龟可不仅仅是画图「建议收藏」

    turtle模块制作的弹球,面向对象,python海龟可不仅仅是画图「建议收藏」fromturtleimport*fromrandomimportrandints=Screen()s.title("turtle模块制作的弹球_作者:李兴球")s.setup(800,600)s.delay(0)classBall(Turtle):  def__init__(self,x,y):    Turtle.__init__(self)…

    2022年9月2日
    2
  • centos7安装python3.6_centos7一键安装python3

    centos7安装python3.6_centos7一键安装python3centos7安装Python3安装Python3安装Python31.安装wget(如已经存在,忽略此步)yum-yinstallwget2.下载python3源码包wgethttps://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz3.下载python3编译的依赖包yuminstall-ygccpatchlibffi-develpython-develzlib-develbzip2-develope

    2022年9月24日
    0
  • qt开发者论坛_go开发常用框架

    qt开发者论坛_go开发常用框架社区论坛国外论坛:Qt-Centre:http://www.qtcentre.org一个非常全面的外国网站,有forum、wiki、docs、blogs等。Qt-forumhttp://www.qtforum.org比较有名的国际Qt编程论坛。Qt-Appshttp://qt-apps.org可以找到很多免费的Qt应用,获得

    2022年10月2日
    0
  • 托马斯微积分第十一版中文版_托马斯微积分14版网盘

    托马斯微积分第十一版中文版_托马斯微积分14版网盘

    2025年7月3日
    0
  • 在线名片设计_diy名片代码在线生成

    在线名片设计_diy名片代码在线生成小小名片,看似简单,它要经过以下八道工序才能到你手中。其间你还得参与名片制作的前期工作,你要对名片印刷方式、印刷难易、印刷用纸选择;你还得提供名片的具体内容,设计大致思路;大多数时间你还得要校稿,特别是要求较高的复杂的名片,商家都有如此请求。名片后期加工也较复杂,需要专业设备和熟练的操作人员。以往,我们得亲自前往名片印刷店印刷,一盒名片也许要去好多趟,好在有了互联网,现在简单了。你大可一边喝着咖啡…

    2025年7月25日
    0
  • C++中set用法详解

    C++中set用法详解1.关于setC++STL之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector,string,list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构操作。vector封装数组,list封装了链表,map和set封装了二叉树等,在封装这些数据结构的时候,STL按照程序员的使用习惯,以成员函数方式提供的常用操作,如:插入、排序、删除、查找等。让用户…

    2022年5月11日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号