日期时间  <-->  时间戳

java.time 包提供的新的日期和时间API

LocalDateTime: 本地日期时间类

ZoneId: 时区类

ZonedDateTime: 带时区的日期时间类

Instant: 高精度时间戳

long: 长整型

LocalDateTime + ZoneId = ZonedDateTime

import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime; public class Main {
public static void main(String[] args) {
// 直接获取 ZonedDateTime 对象
ZonedDateTime zdt1 = ZonedDateTime.now();
System.out.println(zdt1); // LocalDateTime + ZoneId = ZonedDateTime
LocalDateTime ldt = LocalDateTime.now();
ZonedDateTime zdt2 = ldt.atZone(ZoneId.systemDefault());
System.out.println(zdt2);
}
} 运行结果:
2019-10-29T14:01:16.169741500+08:00[Asia/Shanghai]
2019-10-29T14:01:16.170744+08:00[Asia/Shanghai]

ZonedDateTime --> LocalDateTime

import java.time.LocalDateTime;
import java.time.ZonedDateTime; public class Main {
public static void main(String[] args) {
// 直接获取 ZonedDateTime 对象
ZonedDateTime zdt = ZonedDateTime.now();
System.out.println(zdt); //转换为LocalDateTime时,直接丢弃了时区信息
LocalDateTime ldt = zdt.toLocalDateTime();
System.out.println(ldt);
}
} 运行结果:
2019-10-29T14:00:13.876198+08:00[Asia/Shanghai]
2019-10-29T14:00:13.876198

ZonedDateTime -->  Instant  -->  long

import java.time.Instant;
import java.time.ZonedDateTime; public class Main {
public static void main(String[] args) {
// 直接获取 ZonedDateTime 对象
ZonedDateTime zdt = ZonedDateTime.now();
System.out.println(zdt);
// to Instants
Instant ins = zdt.toInstant();
System.out.println(ins);
// to long
System.out.println(ins.toEpochMilli());
}
} 运行结果:
2019-10-29T14:11:00.265786900+08:00[Asia/Shanghai]
2019-10-29T06:11:00.265786900Z
1572329460265

long  -->  Instant  -->  ZonedDateTime

import java.time.Instant;
import java.time.ZoneId;
import java.time.ZonedDateTime; public class Main {
public static void main(String[] args) {
// 获取 unix 毫秒值
long insMilli = Instant.now().toEpochMilli();
System.out.println(insMilli); // to Instant
Instant ins = Instant.ofEpochMilli(insMilli);
// to ZonedDateTime
ZonedDateTime zdt = ZonedDateTime.ofInstant(ins, ZoneId.systemDefault());
System.out.println(zdt);
}
} 运行结果:
1572330350986
2019-10-29T14:25:50.986+08:00[Asia/Shanghai]

ending ~

Java 日期时间与unix时间戳之间转换的更多相关文章

  1. Linux命令date日期时间和Unix时间戳互转

    A.将日期转换为Unix时间戳将当前时间以Unix时间戳表示: date +%s 输出如下: 1361542433 转换指定日期为Unix时间戳: date -d '2013-2-22 22:14' ...

  2. C#中系统时间和UNIX时间戳互相转换

    在项目开发过程中,有时会遇到不同程序之间相互调用数据,数据中不免会包含时间,比如ASP.NET调用PHP,牵扯到时间就要做一下处理,PHP程序中一般存取的都是UNIX时间,不像ASP.NET存储的是年 ...

  3. Java日期时间API系列19-----Jdk8中java.time包中的新的日期时间API类,ZonedDateTime与ZoneId和LocalDateTime的关系,ZonedDateTime格式化和时区转换等。

    通过Java日期时间API系列6-----Jdk8中java.time包中的新的日期时间API类中时间范围示意图:可以很清晰的看出ZonedDateTime相当于LocalDateTime+ZoneI ...

  4. paip.日期时间操作以及时间戳uapi php java python 总结

    paip.日期时间操作以及时间戳uapi php java python 总结 ///uapi Date 函数 | Day 函数 | Hour 函数 | Minute 函数 | Month 函数 | ...

  5. Java 日期时间 Date类型,long类型,String类型表现形式的转换

    Java 日期时间 Date类型,long类型,String类型表现形式的转换 1.java.util.Date类型转换成long类型 java.util.Date dt = new Date(); ...

  6. Java 日期时间 Date类型,long类型,String类型表现形式的转换 (转)

    Java 日期时间 Date类型,long类型,String类型表现形式的转换 1.java.util.Date类型转换成long类型java.util.Date dt = new Date();Sy ...

  7. python datetime和unix时间戳之间相互转换

                                python datetime和unix时间戳之间相互转换 1.代码:    import time    import datetime # ...

  8. 一文告诉你Java日期时间API到底有多烂

    前言 你好,我是A哥(YourBatman). 好看的代码,千篇一律!难看的代码,卧槽卧槽~其实没有什么代码是"史上最烂"的,要有也只有"史上更烂". 日期是商 ...

  9. Java 日期时间

    Java 日期时间 标签 : Java基础 Date java.util.Date对象表示一个精确到毫秒的瞬间; 但由于Date从JDK1.0起就开始存在了,历史悠久,而且功能强大(既包含日期,也包含 ...

随机推荐

  1. element ui 中的时间选择器怎么设置默认值/el-date-picker区间选择器怎么这是默认值

    template代码 <el-date-picker value-format="yyyy-MM-dd" v-model="search.date" ty ...

  2. MyBatis中的配置错误creating bean with name 'sqlSessionFactory'

    错误信息如下: 警告: Exception encountered during context initialization - cancelling refresh attempt: org.sp ...

  3. MacOS安装rJava

    rJava出了名的难装,一大堆问题. 核心的问题: 1. java版本问题,最好用1.8版本的java 2. 编译器的问题 3. 相关头文件header的问题 之前几次装过,但都放弃了,这次花了一下午 ...

  4. 关于qemu的二三事(1)————qemu的特殊参数之monitor

    qemu作为一个十分重要的虚拟化工具,提供了丰富的功能/参数来支持虚拟化的各种操作. 下面仅就monitor这个参数或者说是功能来结合自己的实际体验来做个简要介绍. 如何进入qemu的monitor模 ...

  5. Android ADB常用命令使用

    Android SDK: adb shell 命令的使用(am.pm.wm.screencap.monkey等) https://blog.csdn.net/xietansheng/article/d ...

  6. 如何从OA系统批量整理出邮箱地址,并导入到Foxmail 地址薄中?

    一.打开某位leader的OA,点击查看“下属” a. 将所有的下属信息 --- 全选 --- 复制 --- 粘贴到 excel 表格中 b. 分别提取“姓名” 和 “邮箱”地址信息,结合notepa ...

  7. Spring cloud微服务安全实战-7-12整合链路追踪和日志监控

    调用链路的监控和统一日志的监控结合起来.比如说我在调用链监控上发现有一个调用订单的服务慢了.通过pinpoint可以看到 .用户发出来的请求,经过了网关,经过了order,经过了pagement.通过 ...

  8. 【449】backup get weekly tweets

    import pandas as pd from datetime import datetime fn = r"D:\OneDrive - UNSW\tweets_flu.csv" ...

  9. JavaScript和Jquery个人笔记

    目录 前言 价格 * 数量 = 金额 js计算时间差值 判断敲回车或Shift+回车 js控制textarea换行 $(this)选择当前元素 前端调试禁止其他js js添加a标签href属性和文本 ...

  10. node端代理浏览器路由 解决浏览器跨域问题

    var _ = require('lodash'); var request = require("request"); /* @LM 2017-02-16 node端代理浏览器路 ...