UTC時間與北京時間

每個地區都有自己的本地時間,在網上以及無線電通信中時間轉換的問題就顯得格外突出。我自己就經常混淆於此,特地研究了一下,記錄在此以備忘。 

整個地球分爲二十四時區,每個時區都有自己的本地時間。在國際無線電通信場合,爲了統一起見,使用一個統一的時間,稱爲通用協調時(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,把北京時間轉換成爲了紐約時間,而且把二十四小時格式的時間轉換成爲了十二小時的格式。當然,爲了時間轉換正確,發送方和接受方的計算機的時區都要設置正確,在這裏,發送方的時區要正確地設爲北京時區東八區,而我的時區要設爲西五區。
發佈了49 篇原創文章 · 獲贊 2 · 訪問量 35萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章