博客
关于我
时间:UTC时间、GMT时间、本地时间、Unix时间戳
阅读量:463 次
发布时间:2019-03-06

本文共 1100 字,大约阅读时间需要 3 分钟。

UTC时间与本地时间的转换及Unix时间戳的应用

在计算机领域,UTC(协调世界时)是全球通用的标准时间,常用于国际电报和通信系统。UTC与本地时区之间的关系是通过时区差来确定的。

UTC与本地时的关系

UTC与本地时间的关系可以通过时区差来表示。例如,东八区(如北京)时区差为+0800。根据公式:

UTC = 本地时间 - 时区差

因此,UTC = 本地时间(北京时间) - 0800。

Unix时间戳的计算

Unix时间戳是从1970年1月1日00:00:00起至现在所经过的秒数。这个时间点是计算机内部常用的时间标准。在不同的编程语言中获取当前时间戳的方式如下:

Java

System.currentTimeMillis() / 1000

JavaScript

Math.round(new Date().getTime() / 1000)

C#

(DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000

MySQL

SELECT unix_timestamp(now())

Python

import timetime.time()

Unix/Linux

date +%s

时间戳与普通时间的转换

将Unix时间戳转换为普通日期时间的方法在不同编程语言中也有所不同:

Java

String date = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(new java.util.Date(Unix timestamp * 1000));

JavaScript

var commonTime = new Date(Date.UTC(year, month - 1, day, hour, minute, second));

C#

var date = new DateTime(1970,1,1).AddSeconds(Unix timestamp);

MySQL

SELECT from_unixtime(Unix timestamp)

Python

import timeint(time.mktime(time.strptime('YYYY-MM-DD HH:MM:SS', '%Y-%m-%d %H:%M:%S')))

SQL Server

SELECT DATEDIFF(s, '1970-01-01 00:00:00', time)

Unix/Linux

date -d "Jan 1, 1970 00:00:01"

转载地址:http://dkiyz.baihongyu.com/

你可能感兴趣的文章
Spring Boot集成Redis实现keyspace监听 | Spring Cloud 34
查看>>
Spring Boot中的自定义事件详解与实战
查看>>
Passport 密码模式
查看>>
Spring Boot(七十六):集成Redisson实现布隆过滤器(Bloom Filter)
查看>>
passport 简易搭配
查看>>
passwd命令限制用户密码到期时间
查看>>
Spring Boot 动态加载jar包,动态配置太强了!
查看>>
Spring @Async执行异步方法的简单使用
查看>>
PAT (Basic Level) Practice 乙级1021-1030
查看>>
PAT (Basic Level) Practice 乙级1031-1040
查看>>
PAT (Basic Level) Practice 乙级1041-1045
查看>>
SparkSql的元数据
查看>>
PAT (Basic Level) Practice 乙级1051-1055
查看>>
PAT (Basic Level) Practise - 写出这个数
查看>>
PAT 1027 Colors in Mars
查看>>
PAT 1127 ZigZagging on a Tree[难]
查看>>
PAT 2-07. 素因子分解(20)
查看>>
PAT A1033 重点题
查看>>
SparkSQL学习03-数据读取与存储
查看>>
PAT L2-012. 关于堆的判断
查看>>