每个地区都有自己的本地时间,在网上以及无线电通信中时间转换的问题就显得格外突出。我自己就经常混淆于此,特地研究了一下,记录在此以备忘。
整个地球分为二十四时区,每个时区都有自己的本地时间。在国际无线电通信场合,为了统一起见,使用一个统一的时间,称为通用协调时(UTC,
Universal Time Coordinated)。UTC与格林尼治平均时(GMT, Greenwich Mean
Time)一样,都与英国伦敦的本地时相同。在本文中,UTC与GMT含义完全相同。
北京时区是东八区,领先UTC八个小时,在电子邮件信头的Date域记为+0800。如果在电子邮件的信头中有这么一行:
Date: Fri, 08 Nov 2002 09:42:22 +0800
说明信件的发送地的地方时间是二○○二年十一月八号,星期五,早上九点四十二分(二十二秒),这个地方的本地时领先UTC八个小时(+0800, 就是东八区时间)。电子邮件信头的Date域使用二十四小时的时钟,而不使用AM和PM来标记上下午。
以这个电子邮件的发送时间为例,如果要把这个时间转化为UTC,可以使用一下公式:
UTC + 时区差 = 本地时间
时区差东为正,西为负。在此,把东八区时区差记为 +0800,
UTC + (+0800) = 本地(北京)时间 (1)
那么,UTC = 本地时间(北京时间))- 0800 (2)
0942 - 0800 = 0142
即UTC是当天凌晨一点四十二分二十二秒。如果结果是负数就意味着是UTC前一天,把这个负数加上2400就是UTC在前一天的时间。例如,本地
(北京)时间是 0432 (凌晨四点三十二分),那么,UTC就是 0432 - 0800 = -0368,负号意味着是前一天, -0368 +
2400 = 2032,既前一天的晚上八点三十二分。
纽约的时区是西五区,比UTC落后五个小时,记为 -0500:
UTC + (-0500) = 纽约时间 (3)
UTC = 纽约时间 + 0500 (4)
把(2)式 - (4)式相比较,
UTC = 北京时间 - 0800 = 纽约时间 + 0500 (5)
即 北京时间 = 纽约时间 + 1300 (6)
即北京时间领先纽约时间十三个小时,由(6)式,
纽约时间 = 北京时间 - 1300 (7)
在四月下旬,纽约又换用夏令时,又称为日光节约时,比标准纽约时间提前一个小时,实际成为西四区的标准时间,成为 -0400。
UTC + (-0400) = 纽约夏令时,套用以上公式,
北京时间 = 纽约夏令时 + 1200
纽约夏令时 = 北京时间 - 1200
在这些转换中,最重要的公式就是
UTC + 时区差 = 本地时间
时区差东为正,西为负。
例如,东八区(北京)是
+0800,西五区(纽约)是-0500,加州是西八区,是-0800,美国中部时区是西六区,-0600,美国山地时区是西七区,-0700,太平洋时
区是西八区,-0800,在夏天使用夏时制,成为-0700。德国时区是东一区,+0100,夏天变为+0200。
多数电子邮件程序,例如Outlook Express,在显示时间时,计算机程序把时间先转换成为本地时间再显示,例如,邮件的Date域为:
Date: Fri, 08 Nov 2002 09:42:22 +0800
Outlook Express在显示时就显示为:
Date: Thur, 07 Nov 2002 08:42:22
pm,把北京时间转换成为了纽约时间,而且把二十四小时格式的时间转换成为了十二小时的格式。当然,为了时间转换正确,发送方和接受方的计算机的时区都要
设置正确,在这里,发送方的时区要正确地设为北京时区东八区,而我的时区要设为西五区。
分享到:
相关推荐
在IT领域,尤其是在涉及到跨时区应用或全球性服务的软件开发中,本地时间与UTC时间的转换是一项基本且至关重要的技术。本文将深入探讨本地时间(Local Time)与协调世界时(Coordinated Universal Time,简称UTC)的...
4. **时间区和夏令时**:UTC是不考虑时区和夏令时的,但在某些应用场景中,可能需要将UTC时间转换为特定时区的本地时间,这涉及到时区偏移和夏令时规则。 5. **转换算法**:GPS和UTC之间的转换算法通常涉及简单的加...
当从UTC时间转换为RTC时间时,我们需要考虑用户所在的时区和夏令时(DST, Daylight Saving Time)。UTC不包含时区信息,因此转换过程中需要结合地理位置和当前日期来确定适当的时区偏移。例如,如果用户位于东八区...
在IT行业中,GPS UTC时间转换函数是一个至关重要的概念,尤其对于地理位置定位、导航系统以及时间同步等应用。本文将深入探讨这个主题,帮助你理解如何处理和转换GPS UTC时间,并将其与北京时间相互转换。 首先,...
4. **日期和时间类库**:Visual Studio 2008自带的`<ctime>`库提供了日期和时间处理的功能,如`time_t`类型和`localtime()`、`gmtime()`等函数,可以方便地将UTC时间转换为本地时间或者反之。 5. **错误处理**:在...
在MATLAB环境下开发GUI(图形用户界面)程序,可以实现GNSS时间系统与UTC时间之间的相互转换,这对于卫星通信、地球科学、航空航天等领域非常重要。 在MATLAB中创建GUI,首先需要定义图形组件,如按钮、文本框和...
标题中的“bds/gps与utc时间互转”涉及到的是卫星导航系统的时间系统转换问题。BDS(北斗卫星导航系统)和GPS(全球定位系统)是两大全球卫星导航系统,它们各自拥有独立的时间体系,而UTC(协调世界时)是国际上...
UTC时间,全称为“协调世界时”,是一种国际标准时间,由位于法国巴黎的国际地球自转服务(IERS)进行维护。它不考虑地球的不均匀自转,而是通过原子钟来保持精确的时间,是全球统一的时间参考。在计算机科学和IT...
易语言取UTC时间源码,取UTC时间,WSAStartup,socket,getpeername,Connect,GetDateFormat,GetLocalTime,GetTimeFormat,recv,closesocket,WSACleanup
本压缩包"取UTC时间.rar"提供的易语言源码,旨在帮助开发者理解和实现获取UTC时间的功能。 易语言是一种中国本土开发的、面向对象的、组件驱动的编程语言,其语法简洁明了,适合初学者入门。在易语言中处理UTC时间...
UTC时间转换器,方便开发,验证时间是否正确,好
在C++编程中,进行UTC时间和当前时间的转换是一项常见任务,这通常涉及到`<ctime>`库中的函数。 在标题和描述中提到的"utc时间和当前时间的转换工具",我们可以推断这是一个简单的C++程序,用于帮助开发者在UTC和...
本项目主要涉及了两个关键知识点:GPS-UTC时间转换和坐标系转换,这些在C#编程环境下实现,并通过可视化界面提供了良好的用户体验。 首先,我们来探讨GPS-UTC时间转换。全球定位系统(GPS)使用的是“GPS时”(GPST...
整个代码可直接编译运行;Unix时间戳转北京时间,用到“time.h”头文件,是C语言的标准库,使用...UTC时间转化成北京时间,思路:把UTC时间转换成时间戳,然后时间戳数值加上八小时,再把时间戳转化成北京时间。
在给定的“易语言源码易语言取UTC时间源码.rar”压缩包中,我们预计会找到一段用易语言编写的代码,用于获取当前的UTC时间。 UTC时间是全球统一的时间标准,它基于原子钟的精确计时,不受地理位置影响。在编程中,...
从某一基准时间算起的秒时间,转换为年月日时分秒(YYYY/MM/DD HH/MM/SS)形式。也有人称为GPS秒时间转UTC时间。matlab代码
用于导航行业的辅助工具,GPS时间和UTC时间互转换工具,CRC校验工具
自实现的UTC时间与本地时间的转换(这里只转换成了UTC0区,要到自己的时区自己加上偏移.同时实现了UTC到本地时间的转换和本地时间到UTC时间转换. UTC时间使用的是32位整型实现.没有使用64位.因此只能存储约132年之间的...
这可能涉及到STM32的RTC(Real-Time Clock)模块,通过同步外部UTC时间源或者通过网络接口获取NTP服务器的时间,来保持系统时间的准确性。 在实际应用中,计数器的数据显示可能通过LCD或LED数码管实现,这就需要...
本文将深入探讨UTC时间转换的相关知识点,以及如何编写一个函数来将长整形的UTC时间转换为本地时间。 首先,我们需要理解时间戳的概念。时间戳通常是一个从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不包括...