时间转换错误之总是1970

时间转换错误之总是1970

1. 首先第一个问题,时间为什么从1970开始

好,第一个问题OK了

2. 第二个问题,为什么有时候获取的时间总是1970年的

有时候获取的时间是1970年1月21日等类似的

日期

首先,确定一点,当前时间的确认是通过从1970年1月1日0时0分0秒(中国从8时0分0秒)开始,计算到当前时间点所经历的秒或者毫秒数,注意两个关键词,秒和毫秒

1)如果以秒来计算,用一个变量uint32_t cur_time来存储,存储的值为1000,则日期为:1970-01-01 08:16:40,即1000/60=16分40秒

2)如果按毫秒来算,1000毫秒的日期是:1970-01-01 08:00:01,刚过1s

从上面可以得到一个结论,如果你当前的时间是用秒来存储的,当你把他当成毫秒来计算日期,那么你得到的时间长度将会缩小1000倍,这里的时间长度起点是1970。

举个例子

首先将2970年转换为秒数,得到31556995201,然后再将其按毫秒数转换为日期,最后得到的是1971年1月1日,也就是说,在1970年1月1日到2970年1月1日这个区间内的日期,如果按刚才的方式转换,最后得到的时间必定在1970年1月1日到1971年1月1日之间。

这也就解释了,为什么有时候我们获取的的时间都是1970,因为你计算时间的方式将时间长度缩短了1000倍。

解决这个问题也比较简单,如果对时间精度要求不高,不要求毫秒精度,只要将时间戳*1000后再去转换

相关推荐

中信证券佣金是多少?2025最新收费标准一览表发布时间:2025-3-18 09:57阅读:3604
布朗熊授权,LFT06真无线耳机:诠释可御可萌
资金归集是什么?
365batapp

资金归集是什么?

📅 08-24 👁️ 7375
如何在 Android 上免費加速/減慢影片速度🆓
1月美妆带货榜出炉:低粉高转化达人崭露头角 青眼情报发布2025年1月抖音、小红书两大平台的美妆带货达人排行榜,展现美妆带货领域的市场态势与达人格局。1月抖音美妆带...
去日本带多少日元最合适?
365batapp

去日本带多少日元最合适?

📅 07-12 👁️ 229