本地时间与UTC(世界协调时间)的转换

首先我们了解一下时间的相关概念,以及之间的区别,需要了解的时间概念有:
本地时间(locale time)
格林威治时间(Greenwich Mean Time GMT)
时间协调时间 (Universal Time Coordinated UTC)
本地时间,显而易见不用解释了
先看看时间的标准:
(1)世界时
世界时是最早的时间标准。在1884年,国际上将1s确定为全年内每日平均长度的1/8.64×104。以此标准形成的时间系统,称为世界是,即 UT1。1972年国际上开始使用国际原子时标,从那以后,经过格林威治老天文台本初子午线的时间便被称为世界时,即UT2,或称格林威治时间 (GMT),是对地球转速周期性差异进行校正后的世界时。
(2)原子时
1967年,人们利用铯原子振荡周期极为规律的特性,研制出了高精度的原子时钟,将铯原子能级跃迁辐射9192631770周所经历的时间定为 1s。现在用的时间就是1971年10月定义的国际原子时,是通过世界上大约200多台原子钟进行对比后,再由国际度量衡局时间所进行数据处理,得出的统 一的原子时,简称TAI。
(3)世界协调时
世界协调时是以地球自转为基础的时间标准。由于地球自转速度并不均匀,并非每天都是精确的86400原子s,因而导致了自转时间与世界时之间存在 18个月有1s的误差。为纠正这种误差,国际地球自转研究所根据地球自转的实际情况对格林威治时间进行增减闰s的调整,与国际度量衡局时间所联合向全世界 发布标准时间,这就是所谓的世界协调时(UTC:Coordinatde Universal Time)。UTC的表示方式为:年(y)、月(m)、日(d)、时(h)、分(min)、秒(s),均用数字表示。

GPS 系统中有两种时间区分,一为UTC,另一为LT(地方时)两者的区别为时区不同,UTC就是0时区的时间,地方时为本地时间,如北京为早上八点(东八区),UTC时间就为零点,时间比北京时晚八小时,以此计算即可
通过上面的了解,我们可以认为格林威治时间就是时间协调时间(GMT=UTC),格林威治时间和UTC时间均用秒数来计算的。

而在我们平时工作当中看到的计算机日志里面写的时间大多数是用UTC时间来计算的,那么我们该怎么将UTC时间转化为本地时间便于查看日志,那么在作程序开发时又该怎么将本地时间转化为UTC时间呢?
下面就介绍一个简单而使用的工具,就是使用linux/unix命令date来进行本地时间和local时间的转化。
大家都知道,在计算机中看到的utc时间都是从(1970年01月01日 0:00:00)开始计算秒数的。所看到的UTC时间那就是从1970年这个时间点起到具体时间共有多少秒。

以我的FC9平台为例:
1.使用date命令获得本地时间
Mon Jan 5 21:06:48 CST 2009
2.将本地易理解的时间转化为UTC时间,使用date 命令,对该时间进行UTC格式化
date +%s -d “Mon Jan 5 21:06:48 CST 2009”
返回的结果是:1231160808 #自1970年1月1日0:00:00起到今天晚上21:06:48共1231160808秒

1231160808这就是我们所说的UTC或者格林威治时间。

3.使用命令date将难以理解的UTC时间转化成为容易理解的本地时间
在这里,我们随便将上面这个格林威治时间修改一下来进行转化即可,比如1231130828
date -d “1970-01-01 UTC 1231130828 sec”

返回结果是:Mon Jan 5 12:47:08 CST 2009 #是今天中午12:47:08

4.使用date命令将本地时间进行格式化
date +%X -d “Mon Jan 5 12:47:08 CST 2009”
返回结果:12:47:08 PM

date +%x +%X -d “Mon Jan 5 12:47:08 CST 2009”
返回结果是:01/05/2009 12:47:08 PM

date +’%x %X %W’ -d “Mon Jan 5 12:47:08 CST 2009”
返回结果:01/05/2009 12:47:08 PM 01 #01是星期一,如果是%w,返回的是1

date +’%Y-%m-%d %H:%M:%S %W’ -d “Mon Jan 5 12:47:08 CST 2009”
返回结果是:2009-01-05 12:47:08 01

对UTC时间的进行格式化:
date +’%x %X’ -d “1970-01-01 UTC 1231130828 sec”
返回结果:01/05/2009 12:47:08 PM

date命令还有很多格式化的参数,功能很强大,大家可以使用”man date”或者”info date”来作参考。

对于windows的朋友没有linux环境,没有办法进行时间转化,推举一个网址可以作时间转化:

Original: https://www.cnblogs.com/LiuYanYGZ/p/16013330.html
Author: LiuYanYGZ
Title: 本地时间与UTC(世界协调时间)的转换

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/552492/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 使用mybatis-plus转换枚举值

    1. 使用mybatis-plus转换枚举值 枚举值转换方式有很多,有以下方式: 后端写一个通用方法,只要前端传枚举类型,后端返回相应的枚举值前端去匹配 优点:能够实时保持数据一致…

    技术杂谈 2023年7月25日
    068
  • 技巧:使用可扩展对象模式扩展HttpApplication

    HttpApplication对象对于做ASP.NET开发的朋友,我想没有人不熟悉它。在ASP.NET开发中,经常避免不了要在HttpApplication中执行一些操作,如使用了…

    技术杂谈 2023年5月31日
    079
  • Java复习,Java知识点以及Java面试题(四)

    集合框架: 集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象。 Collection 集合的顶层接口 Collection 方法概述: 添加 boolean add…

    技术杂谈 2023年6月21日
    0101
  • 四元数Quaternion的基本运算

    在前面一篇文章中我们介绍了欧拉角死锁问题的一些产生背景,还有基于四元数的求解方案。四元数这个概念虽然重要,但是很少会在通识教育课程中涉及到,更多的是一些图形学或者是工程学当中才会进…

    技术杂谈 2023年7月25日
    0101
  • 「实用」打造自我感觉非常漂亮的Mac终端

    背景 (今天我是一个美妆博主😊)突然发现自己使用的iterm2终端样式有些朴素,为了让她看起来花枝招展的,我决定给她打扮打扮。毕竟每天面对她的时间比对象还多…&#823…

    技术杂谈 2023年7月24日
    096
  • Spring Ioc源码分析系列–@Autowired注解的实现原理

    Spring Ioc源码分析系列–@Autowired注解的实现原理 前言 前面系列文章分析了一把Spring Ioc的源码,是不是云里雾里,感觉并没有跟实际开发搭上半…

    技术杂谈 2023年7月25日
    095
  • 多线程06:条件变量

    与本文无关的知识联系: 一、call_once 函数模板, 第一个参数为标记,第二个参数为要调用的函数名,如test() 功能:保证写入第二个参数的函数(如test() )只能被调…

    技术杂谈 2023年7月25日
    091
  • Manjaro Rust环境搭建

    Rust 下载Rust 之后配置环境, 在最后加入 之后reboot就可以了 输入rustc –version和cargo查看是否安装成功 修改Rust Crates …

    技术杂谈 2023年6月1日
    087
  • Mall谷粒商城(基础篇的开发)

    项目简介 Mall商城项目致力于打造一个完整的大型分布式架构的电商平台,采用先阶段流行的前后端分离模式编写。 Mall商城是一套电商项目,包括前台的商城系统以及后台管理系统,基于S…

    技术杂谈 2023年7月11日
    0109
  • []企业的生命周期总结提炼

    [原创]企业的生命周期总结提炼 [原创]企业的生命周期总结提炼 企业生命周期,通常可以分为初创期、成长期、成熟期、衰退期等四个阶段。 做企业一定要”顺势而为&#8221…

    技术杂谈 2023年5月30日
    0124
  • es index template

    建一个索引的步骤 1:先创建轮滚策略 2:创建模板 3:创建索引 创建轮滚策略 创建索引模板 根据模板创建索引 创建索引后,如果要观察轮滚效果,可以手动滚动 修改mapping后数…

    技术杂谈 2023年7月10日
    075
  • Redis缓存雪崩、缓存穿透、缓存击穿

    缓存雪崩 Redis中的缓存数据是有过期时间的,当在同一时间大量的缓存同时失效时就会造成缓存雪崩。解决方案1、设置Redis中的key永不过期,缺点是会占用很多内存2、使用Redi…

    技术杂谈 2023年7月25日
    078
  • 浅谈kali : arpspoof工具原理

    介绍 arpspoof是一个通过ARP协议伪造数据包实现中间人攻击的kali工具。 中间人攻击虽然古老,但仍处于受到黑客攻击的危险中,可能会严重导致危害服务器和用户。仍然有很多变种…

    技术杂谈 2023年7月25日
    082
  • Collection和Collections有什么区别?

    1、java.util.Collection 是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collec…

    技术杂谈 2023年5月30日
    093
  • Python数据分析–Numpy常用函数介绍(5)–Numpy中的相关性函数

    摘要:NumPy中包含大量的函数,这些函数的设计初衷是能更方便地使用,掌握解这些函数,可以提升自己的工作效率。这些函数包括数组元素的选取和多项式运算等。下面通过实例进行详细了解。 …

    技术杂谈 2023年7月25日
    065
  • 矿池列表汇总

    比特币 (BTC)矿池信息整理 矿池名称挖矿模式矿池手续费矿池地址及端口备注 (蚂蚁矿池) PPS PPLNS PPS+ SOLO PPS: -5% PPLNS: 0% PPS+:…

    技术杂谈 2023年5月31日
    0130
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球