我有UTC秒格式的时间。谁可以帮助如何将这些数字转换为GPS时间在正常的时间戳(dd-mm-yyyy hh:mm:ss)?我需要一个C代码,或者,也许,算法。
发布于 2012-02-14 09:52:44
更新(2017年6月):目前是18个闰秒。
GPS时间是简单的协调世界时,但没有leap seconds。在撰写本文时,从GPS纪元( 1980年1月6日@ 00:00:00)开始已经有15个闰秒,所以如果现在是2012/02/13 @ 12:00:00 (UTC),那么在GPS时间中就是2012/02/13 @ 12:00:15。如果你想在其他时间做正确的转换,你必须考虑到每个闰秒是什么时候生效的。
以下是如何从几个不同的“权威”来源计算当前偏移量:
2571782400 20 # 1 Jul 1981行开始的行数。或者从列表中截至5月的最后一个数字减去19 (例如,37-19 = 18) 2017.Leap Seconds Inserted into the UTC Time Scale部分)插入的闰秒的数量,从1981-06-30条目开始(并包括)。发布于 2012-02-10 21:17:42
有关算法,请查看此站点的源代码:UTC Converter
对于c++中的内置函数,请检查here -尤其是ctime()
发布于 2012-06-13 06:11:32
有一个Javascript库可以在unixtime之间来回转换。该库可在以下位置获得
http://www.lsc-group.phys.uwm.edu/~kline/gpstime/
无论你使用哪种算法,当宣布新的闰秒时,你必须更新它。
https://stackoverflow.com/questions/9227888
复制相似问题