关于时间:UTC时间、GMT时间、本地时间、Unix时间戳

1.UTC时间 与 GMT时间

我们可以认为格林威治时间就是时间协调时间(GMT=UTC),格林威治时间和UTC时间均用秒数来计算的。

2.UTC时间 与 本地时

UTC + 时区差 = 本地时间

时区差东为正,西为负。在此,把东八区时区差记为 +0800,

UTC + (+0800) = 本地(北京)时间 (1)

那么,UTC = 本地时间(北京时间))- 0800 (2)

3.UTC 与 Unix时间戳

在计算机中看到的UTC时间都是从(1970年01月01日 0:00:00)开始计算秒数的。所看到的UTC时间那就是从1970年这个时间点起到具体时间共有多少秒。 这个秒数就是Unix时间戳。

4.怎样判断程序获取到的是UTC时间还是本地时间
让程序先获取一次时间戳,然后改变系统的时区设置,然后重新运行程序,在获取一次时间戳,比较两个时间戳的差如果很小(应该小于半小时,即180秒) ,则说明获取的是UTC时间,因为这个时间是与你的系统时区设置无关的。
以C语言为例:
#include
#include
#include
void main(void)
{
time_t start;
time( &start );
printf(“%d\n”,start);
while(1);
}

分享到: 更多
版权申明:

本站保留所有原创文章的版权,本站地址:奔跑的博客[http://www.elecbench.com]

原创文章转载时请注明出处,并添加文章所在页面的链接:http://www.elecbench.com/%e5%85%b3%e4%ba%8e%e6%97%b6%e9%97%b4%ef%bc%9autc%e6%97%b6%e9%97%b4%e3%80%81gmt%e6%97%b6%e9%97%b4%e3%80%81%e6%9c%ac%e5%9c%b0%e6%97%b6%e9%97%b4%e3%80%81unix%e6%97%b6%e9%97%b4%e6%88%b3/

本站所有 2010年3月4日 以后发表、未标明为“转载”的文章均是本站原创。

发表评论


(设置自己的个性头像)

*

申请属于你的免费顶级域名