java之時間戳處理


●時間戳(timestamp)定義

時間戳指的是從格林威治時間1970年01月01日00時00分00秒起至現在的總秒數。嚴格來說,不管你處在地球上的哪個地方,任意時間點的時間戳都是相同的。這點有利於線上和客戶端分布式應用統一追蹤時間信息。時間戳是沒有時區概念的,同一個時間戳對不同時區顯示的時間不一樣而已。

  

  最近在做一個api的自測時發現,在不同環境同一個api返回的response里的時間戳結果不太一樣。查看了下編程邏輯,代碼如下:

                    SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd");
                    Date date = sDateFormat.parse(m.getDaytime());//格式類似"2020-02-20"
                    getEventNumDateResponse.setTime(date.getTime());
                    sDateFormat = null;

  這段代碼邏輯上沒什么問題,但在不同環境上運行結果不一樣,問題出在哪了?

  細想,懷疑Date與時區肯定有關系,經過檢查,發現本地的時區是默認的東八區UTC+0800,本地java 程序運行也沒配置時區,采用的自然是系統時區東八區,而在另外一個開發環境,jar包運行時配置了-Duser.timezone=UTC,雖然系統默認也是東八區,原來是這個設置導致的。

  比如"2020-02-20"這個字符串時間,被SimpleDateFormat parse后,如果當前的運行時區(沒設置則是系統時區)是UTC+0800,則時間Date是:Thu Feb 20 00:00:00 CST 2020

  CST時區包含了UTC+8:00 也就是這個時間自然是東八區的 2020-02-20 00:00:00 這個時間,對應着是UTC 0時區的2020-02-19 16:00:00時間,通過getTime獲取的時間戳是:

System.out.println(TimeZone.getDefault().getRawOffset());
28800000
System.out.println(sdf.parse("2020-02-20").getTime());
1582128000000

通過在pg里轉化驗證:
SELECT TO_TIMESTAMP(1582128000)AT TIME ZONE 'UTC-0' ;
2020-02-19 16:00:00

SELECT TO_TIMESTAMP(1582128000)AT TIME ZONE 'Asia/Shanghai' ;
2020-02-20 00:00:00

    同樣,當我們在系統里設置了時區為UTC 0時區,或者在jar運行時設置了-Duser.timezone=UTC,或者在代碼里配置了

    

TimeZone.setDefault(TimeZone.getTimeZone("UTC"));

  這樣,當后面SimpleDateFormat parse后, 則時間Date是:Thu Feb 20 00:00:00 UTC 2020,表明是UTC 0時區的 2020-02-20 00:00:00 這個時間,對應着是UTC+8時區的

2020-02-20 08:00:00時間,通過getTime獲取的時間戳是:
System.out.println(TimeZone.getDefault().getRawOffset());
0

System.out.println(sdf.parse("2020-02-20").getTime()); 1582156800000 通過在pg里轉化驗證: SELECT TO_TIMESTAMP(1582156800)AT TIME ZONE 'UTC-0' ; 2020-02-20 00:00:00
----直接寫時區偏移(基於格林威治時區,是反的,即提前-滯后+,例如正常東八區,需要寫-8:00,因此建議直接用時區縮寫,見后面附表,當然也可以寫
---Asia/Shanghai表示東八區
SELECT TO_TIMESTAMP(1582156800)AT TIME ZONE 'Asia/Shanghai' ; 
2020-02-20 08:00:00

     寫到這里,相信大家都明白了為啥同一個程序在不同機器上跑出的涉及時間戳的結果不一致,這一點要注意額,千萬別掉坑里。

     最后,說一下涉及時間戳時,配置時區的幾種方式:

Linux中:(以redhat 7.0為例)

查看:
[root@localhost Desktop]# timedatectl status Local time: Thu 2020-02-27 14:57:58 CST Universal time: Thu 2020-02-27 06:57:58 UTC RTC time: Thu 2020-02-27 06:58:00 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: yes NTP synchronized: no RTC in local TZ: no DST active: n/a

或者:

[root@localhost Desktop]# date -R
Thu, 27 Feb 2020 15:00:25 +0800

設置:
# timedatectl set-timezone "Asia/Shanghai"

 

在Java中也可以設置時區

1)啟動設置
java -Duser.timezone=Asia/Shanghai -jar xxx.jar

 

2) 代碼中設置

TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.parse("2018-09-01 08:00:00").getTime());

3) 單次處理生效,建議使用joda的時間包

<dependency>
    <groupId>joda-time</groupId>
    <artifactId>joda-time</artifactId>
    <version>2.9.9</version>
</dependency>

DateTimeFormatter dateTimeFormatter = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss").withChronology(ISOChronology.getInstance(DateTimeZone.forID("Asia/Shanghai")));
System.out.println(dateTimeFormatter.parseDateTime("2018-09-01 08:00:00").getMillis());

      另外,了解Java8 的朋友可能都知道,Java8提供了一套新的時間處理API,這套API比以前的時間處理API要友好的多。

 

  Java8 中加入了對時區的支持,帶時區的時間為分別為:ZonedDate、ZonedTime、ZonedDateTime。其中每個時區都對應着 ID,地區ID都為 “{區域}/{城市}”的格式,如Asia/Shanghai、America/Los_Angeles等。

      Java中的Date類中是不包含時區信息的,在使用System.out.println打印Date的時候,回調用Date.toString方法,該方法會獲取系統的默認時區來轉換時間。

       在Java8中可以使用ZonedTime、ZonedDate和ZonedDateTime來表示帶有時區信息的時間。

LocalDateTime now = LocalDateTime.now(ZoneId.of("America/Los_Angeles")); 
System.out.println(now);
//獲取秒數 Long second = LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8")); //獲取毫秒數 Long milliSecond = LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli();

//時間轉字符串格式化
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS");
String dateTime = LocalDateTime.now(ZoneOffset.of("+8")).format(formatter);

//字符串轉時間
String dateTimeStr = "2018-07-28 14:11:15";
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");

LocalDateTime localDateTime = LocalDateTime.now(); Date date = Date.from(localDateTime.atZone(ZoneOffset.ofHours(8)).toInstant());

 

 

 

 

附幾種時區標准:

1.UTC

UTC+時區差=本地時間

時區差東為正,西為負

UTC是協調世界時(Universal Time Coordinated)英文縮寫,是由國際無線電咨詢委員會規定和推薦,並由國際時間局(BIH)負責保持的以秒為基礎的時間標度。UTC相當於本初子午線(即經度0度)上的平均太陽時,過去曾用格林威治平均時(GMT)來表示.北京時間比UTC時間早8小時,以1999年1月1日0000UTC為例,UTC時間是零點,北京時間為1999年1月1日早上8點整。

 

2.GMT(Greenwich Mean Time)是格林尼治平時: 
由於地球軌道並非圓形,其運行速度又隨着地球與太陽的距離改變而出現變化,因此視太陽時欠缺均勻性。視太陽日的長度同時亦受到地球自轉軸相對軌道面的傾斜度所影響。為着要糾正上述的不均勻性,天文學家計算地球非圓形軌跡與極軸傾斜對視太陽時的效應。平太陽時就是指經修訂后的視太陽時。在格林尼治子午線上的平太陽時稱為世界時(UT0),又叫格林尼治平時(GMT)。 為了確保協調世界時與世界時(UT1)相差不會超過0.9秒,有需要時便會在協調世界時內加上正或負閏秒。因此協調世界時與國際原子時(TAI)之間會出現若干整數秒的差別。位於巴黎的國際地球自轉事務中央局(IERS)負責決定何時加入閏秒。

也就是說,UTC 基本上等於GMT

 

3.CET

(英語:Central European Time,CET)歐洲中部時間是比世界標准時間(UTC)早一個小時的時區名稱之一。它被大部分歐洲國家和部分北非國家采用。冬季時間為UTC+1,夏季歐洲夏令時為UTC+2。

 

4.CEST

歐洲中部夏令時間(Central European Summer Time,簡稱CEST)比世界標准時間(UTC)早兩個小時的時區名稱之一。它被大部分歐洲國家和部分北非國家在夏天采用(UTC+2),冬季這些國家使用歐洲中部時間(UTC+1)

 

附JAVA TIMEZONE 時區表:

Etc/GMT+12

Etc/GMT+11
MIT
Pacific/Apia
Pacific/Midway
Pacific/Niue
Pacific/Pago_Pago
Pacific/Samoa
US/Samoa
America/Adak
America/Atka

Etc/GMT+10
HST
Pacific/Fakaofo
Pacific/Honolulu
Pacific/Johnston
Pacific/Rarotonga
Pacific/Tahiti
SystemV/HST10
US/Aleutian
US/Hawaii
Pacific/Marquesas
AST
America/Anchorage
America/Juneau
America/Nome
America/Yakutat

Etc/GMT+9
Pacific/Gambier
SystemV/YST9
SystemV/YST9YDT
US/Alaska
America/Dawson
America/Ensenada
America/Los_Angeles
America/Tijuana
America/Vancouver
America/Whitehorse
Canada/Pacific
Canada/Yukon

Etc/GMT+8
Mexico/BajaNorte
PST
PST8PDT
Pacific/Pitcairn
SystemV/PST8
SystemV/PST8PDT
US/Pacific
US/Pacific-New
America/Boise
America/Cambridge_Bay
America/Chihuahua
America/Dawson_Creek
America/Denver
America/Edmonton
America/Hermosillo
America/Inuvik
America/Mazatlan
America/Phoenix
America/Shiprock
America/Yellowknife
Canada/Mountain

Etc/GMT+7
MST
MST7MDT
Mexico/BajaSur
Navajo
PNT
SystemV/MST7
SystemV/MST7MDT
US/Arizona
US/Mountain
America/Belize
America/Cancun
America/Chicago
America/Costa_Rica
America/El_Salvador
America/Guatemala
America/Indiana/Knox
America/Indiana/Tell_City
America/Knox_IN
America/Managua
America/Menominee
America/Merida
America/Mexico_City
America/Monterrey
America/North_Dakota/Center
America/North_Dakota/New_Salem
America/Rainy_River
America/Rankin_Inlet
America/Regina
America/Swift_Current
America/Tegucigalpa
America/Winnipeg
CST
CST6CDT
Canada/Central
Canada/East-Saskatchewan
Canada/Saskatchewan
Chile/EasterIsland

Etc/GMT+6
Mexico/General
Pacific/Easter
Pacific/Galapagos
SystemV/CST6
SystemV/CST6CDT
US/Central
US/Indiana-Starke
America/Atikokan
America/Bogota
America/Cayman
America/Coral_Harbour
America/Detroit
America/Eirunepe
America/Fort_Wayne
America/Grand_Turk
America/Guayaquil
America/Havana
America/Indiana/Indianapolis
America/Indiana/Marengo
America/Indiana/Petersburg
America/Indiana/Vevay
America/Indiana/Vincennes
America/Indiana/Winamac
America/Indianapolis
America/Iqaluit
America/Jamaica
America/Kentucky/Louisville
America/Kentucky/Monticello
America/Lima
America/Louisville
America/Montreal
America/Nassau
America/New_York
America/Nipigon
America/Panama
America/Pangnirtung
America/Port-au-Prince
America/Porto_Acre
America/Resolute
America/Rio_Branco
America/Thunder_Bay
America/Toronto
Brazil/Acre
Canada/Eastern
Cuba
EST
EST5EDT

Etc/GMT+5
IET
Jamaica
SystemV/EST5
SystemV/EST5EDT
US/East-Indiana
US/Eastern
US/Michigan
America/Caracas
America/Anguilla
America/Antigua
America/Aruba
America/Asuncion
America/Barbados
America/Blanc-Sablon
America/Boa_Vista
America/Campo_Grande
America/Cuiaba
America/Curacao
America/Dominica
America/Glace_Bay
America/Goose_Bay
America/Grenada
America/Guadeloupe
America/Guyana
America/Halifax
America/La_Paz
America/Manaus
America/Marigot
America/Martinique
America/Moncton
America/Montserrat
America/Port_of_Spain
America/Porto_Velho
America/Puerto_Rico
America/Santiago
America/Santo_Domingo
America/St_Barthelemy
America/St_Kitts
America/St_Lucia
America/St_Thomas
America/St_Vincent
America/Thule
America/Tortola
America/Virgin
Antarctica/Palmer
Atlantic/Bermuda
Atlantic/Stanley
Brazil/West
Canada/Atlantic
Chile/Continental

Etc/GMT+4
PRT
SystemV/AST4
SystemV/AST4ADT
America/St_Johns
CNT
Canada/Newfoundland
AGT
America/Araguaina
America/Argentina/Buenos_Aires
America/Argentina/Catamarca
America/Argentina/ComodRivadavia
America/Argentina/Cordoba
America/Argentina/Jujuy
America/Argentina/La_Rioja
America/Argentina/Mendoza
America/Argentina/Rio_Gallegos
America/Argentina/San_Juan
America/Argentina/San_Luis
America/Argentina/Tucuman
America/Argentina/Ushuaia
America/Bahia
America/Belem
America/Buenos_Aires
America/Catamarca
America/Cayenne
America/Cordoba
America/Fortaleza
America/Godthab
America/Jujuy
America/Maceio
America/Mendoza
America/Miquelon
America/Montevideo
America/Paramaribo
America/Recife
America/Rosario
America/Sao_Paulo
Antarctica/Rothera
BET
Brazil/East

Etc/GMT+3
America/Noronha
Atlantic/South_Georgia
Brazil/DeNoronha

Etc/GMT+2
America/Scoresbysund
Atlantic/Azores
Atlantic/Cape_Verde

Etc/GMT+1
Africa/Abidjan
Africa/Accra
Africa/Bamako
Africa/Banjul
Africa/Bissau
Africa/Casablanca
Africa/Conakry
Africa/Dakar
Africa/El_Aaiun
Africa/Freetown
Africa/Lome
Africa/Monrovia
Africa/Nouakchott
Africa/Ouagadougou
Africa/Sao_Tome
Africa/Timbuktu
America/Danmarkshavn
Atlantic/Canary
Atlantic/Faeroe
Atlantic/Faroe
Atlantic/Madeira
Atlantic/Reykjavik
Atlantic/St_Helena
Eire

Etc/GMT

Etc/GMT+0

Etc/GMT-0

Etc/GMT0
Etc/Greenwich
Etc/UCT
Etc/UTC
Etc/Universal
Etc/Zulu
Europe/Belfast
Europe/Dublin
Europe/Guernsey
Europe/Isle_of_Man
Europe/Jersey
Europe/Lisbon
Europe/London
GB
GB-Eire
GMT
GMT0
Greenwich
Iceland
Portugal
UCT
UTC
Universal
WET
Zulu
Africa/Algiers
Africa/Bangui
Africa/Brazzaville
Africa/Ceuta
Africa/Douala
Africa/Kinshasa
Africa/Lagos
Africa/Libreville
Africa/Luanda
Africa/Malabo
Africa/Ndjamena
Africa/Niamey
Africa/Porto-Novo
Africa/Tunis
Africa/Windhoek
Arctic/Longyearbyen
Atlantic/Jan_Mayen
CET
ECT

Etc/GMT-1
Europe/Amsterdam
Europe/Andorra
Europe/Belgrade
Europe/Berlin
Europe/Bratislava
Europe/Brussels
Europe/Budapest
Europe/Copenhagen
Europe/Gibraltar
Europe/Ljubljana
Europe/Luxembourg
Europe/Madrid
Europe/Malta
Europe/Monaco
Europe/Oslo
Europe/Paris
Europe/Podgorica
Europe/Prague
Europe/Rome
Europe/San_Marino
Europe/Sarajevo
Europe/Skopje
Europe/Stockholm
Europe/Tirane
Europe/Vaduz
Europe/Vatican
Europe/Vienna
Europe/Warsaw
Europe/Zagreb
Europe/Zurich
MET
Poland
ART
Africa/Blantyre
Africa/Bujumbura
Africa/Cairo
Africa/Gaborone
Africa/Harare
Africa/Johannesburg
Africa/Kigali
Africa/Lubumbashi
Africa/Lusaka
Africa/Maputo
Africa/Maseru
Africa/Mbabane
Africa/Tripoli
Asia/Amman
Asia/Beirut
Asia/Damascus
Asia/Gaza
Asia/Istanbul
Asia/Jerusalem
Asia/Nicosia
Asia/Tel_Aviv
CAT
EET
Egypt

Etc/GMT-2
Europe/Athens
Europe/Bucharest
Europe/Chisinau
Europe/Helsinki
Europe/Istanbul
Europe/Kaliningrad
Europe/Kiev
Europe/Mariehamn
Europe/Minsk
Europe/Nicosia
Europe/Riga
Europe/Simferopol
Europe/Sofia
Europe/Tallinn
Europe/Tiraspol
Europe/Uzhgorod
Europe/Vilnius
Europe/Zaporozhye
Israel
Libya
Turkey
Africa/Addis_Ababa
Africa/Asmara
Africa/Asmera
Africa/Dar_es_Salaam
Africa/Djibouti
Africa/Kampala
Africa/Khartoum
Africa/Mogadishu
Africa/Nairobi
Antarctica/Syowa
Asia/Aden
Asia/Baghdad
Asia/Bahrain
Asia/Kuwait
Asia/Qatar
Asia/Riyadh
EAT

Etc/GMT-3
Europe/Moscow
Europe/Volgograd
Indian/Antananarivo
Indian/Comoro
Indian/Mayotte
W-SU
Asia/Riyadh87
Asia/Riyadh88
Asia/Riyadh89
Mideast/Riyadh87
Mideast/Riyadh88
Mideast/Riyadh89
Asia/Tehran
Iran
Asia/Baku
Asia/Dubai
Asia/Muscat
Asia/Tbilisi
Asia/Yerevan

Etc/GMT-4
Europe/Samara
Indian/Mahe
Indian/Mauritius
Indian/Reunion
NET
Asia/Kabul
Asia/Aqtau
Asia/Aqtobe
Asia/Ashgabat
Asia/Ashkhabad
Asia/Dushanbe
Asia/Karachi
Asia/Oral
Asia/Samarkand
Asia/Tashkent
Asia/Yekaterinburg

Etc/GMT-5
Indian/Kerguelen
Indian/Maldives
PLT
Asia/Calcutta
Asia/Colombo
Asia/Kolkata
IST
Asia/Katmandu
Antarctica/Mawson
Antarctica/Vostok
Asia/Almaty
Asia/Bishkek
Asia/Dacca
Asia/Dhaka
Asia/Novosibirsk
Asia/Omsk
Asia/Qyzylorda
Asia/Thimbu
Asia/Thimphu
BST

Etc/GMT-6
Indian/Chagos
Asia/Rangoon
Indian/Cocos
Antarctica/Davis
Asia/Bangkok
Asia/Ho_Chi_Minh
Asia/Hovd
Asia/Jakarta
Asia/Krasnoyarsk
Asia/Phnom_Penh
Asia/Pontianak
Asia/Saigon
Asia/Vientiane

Etc/GMT-7
Indian/Christmas
VST
Antarctica/Casey
Asia/Brunei
Asia/Choibalsan
Asia/Chongqing
Asia/Chungking
Asia/Harbin
Asia/Hong_Kong
Asia/Irkutsk
Asia/Kashgar
Asia/Kuala_Lumpur
Asia/Kuching
Asia/Macao
Asia/Macau
Asia/Makassar
Asia/Manila
Asia/Shanghai
Asia/Singapore
Asia/Taipei
Asia/Ujung_Pandang
Asia/Ulaanbaatar
Asia/Ulan_Bator
Asia/Urumqi
Australia/Perth
Australia/West
CTT

Etc/GMT-8
Hongkong
PRC
Singapore
Australia/Eucla
Asia/Dili
Asia/Jayapura
Asia/Pyongyang
Asia/Seoul
Asia/Tokyo
Asia/Yakutsk

Etc/GMT-9
JST
Japan
Pacific/Palau
ROK
ACT
Australia/Adelaide
Australia/Broken_Hill
Australia/Darwin
Australia/North
Australia/South
Australia/Yancowinna
AET
Antarctica/DumontDUrville
Asia/Sakhalin
Asia/Vladivostok
Australia/ACT
Australia/Brisbane
Australia/Canberra
Australia/Currie
Australia/Hobart
Australia/Lindeman
Australia/Melbourne
Australia/NSW
Australia/Queensland
Australia/Sydney
Australia/Tasmania
Australia/Victoria

Etc/GMT-10
Pacific/Guam
Pacific/Port_Moresby
Pacific/Saipan
Pacific/Truk
Pacific/Yap
Australia/LHI
Australia/Lord_Howe
Asia/Magadan

Etc/GMT-11
Pacific/Efate
Pacific/Guadalcanal
Pacific/Kosrae
Pacific/Noumea
Pacific/Ponape
SST
Pacific/Norfolk
Antarctica/McMurdo
Antarctica/South_Pole
Asia/Anadyr
Asia/Kamchatka

Etc/GMT-12
Kwajalein
NST
NZ
Pacific/Auckland
Pacific/Fiji
Pacific/Funafuti
Pacific/Kwajalein
Pacific/Majuro
Pacific/Nauru
Pacific/Tarawa
Pacific/Wake
Pacific/Wallis
NZ-CHAT
Pacific/Chatham

Etc/GMT-13
Pacific/Enderbury
Pacific/Tongatapu

Etc/GMT-14
Pacific/Kiritimati

附: PostgreSQL Time Zone Names

 

 

Names

Offset

Description

FJST

-13:00

Fiji Summer Time

FJT

-12:00

Fiji Time

IDLW

-12:00

International Date Line, West

BST

-11:00

Bering Summer Time

NT

-11:00

Nome Time

NUT

-11:00

Niue Time

AHST

-10:00

Alaska-Hawaii Std Time

CAT

-10:00

Central Alaska Time

HST

-10:00

Hawaii Std Time

THAT

-10:00

Tahiti Time

TKT

-10:00

Tokelau Time

MART

-09:30

Marquesas Time

AKST

-09:00

Alaska Standard Time

GAMT

-09:00

Gambier Time

HDT

-09:00

Hawaii/Alaska Daylight Time

YST

-09:00

Yukon Standard Time

AKDT

-08:00

Alaska Daylight Time

PST

-08:00

Pacific Standard Time

YDT

-08:00

Yukon Daylight Time

MST

-07:00

Mountain Standard Time

PDT

-07:00

Pacific Daylight Time

CST

-06:00

Central Standard Time

EAST

-06:00

Easter Island Time

GALT

-06:00

Galapagos Time

MDT

-06:00

Mountain Daylight Time

ZP6

-06:00

UTC +6 hours

ACT

-05:00

Atlantic/Porto Acre Time

CDT

-05:00

Central Daylight Time

COT

-05:00

Columbia Time

EASST

-05:00

Easter Island Summer Time

ECT

-05:00

Ecuador Time

EST

-05:00

Eastern Standard Time

PET

-05:00

Peru Time

ZP5

-05:00

UTC +5 hours

ACST

-04:00

Atlantic/Porto Acre Summer Time

AMT

-04:00

Amazon Time (Porto Velho)

AST

-04:00

Atlantic Std Time (Canada)

BOT

-04:00

Bolivia Time

CLT

-04:00

Chile Time

ECT

-04:00

Eastern Caribbean Time

EDT

-04:00

Eastern Daylight Time

GYT

-04:00

Guyana Time

PYT

-04:00

Paraguay Time

VET

-04:00

Venezuela Time

ZP4

-04:00

UTC +4 hours

NFT

-03:30

Newfoundland Standard Time

NST

-03:30

Newfoundland Standard Time

ADT

-03:00

Atlantic Daylight Time

AMST

-03:00

Amazon Summer Time (Porto Velho)

ART

-03:00

Argentina Time

AWT

-03:00

Brazil Time

BRT

-03:00

Brasilia Time

BST

-03:00

Brazil Standard Time

CLST

-03:00

Chile Summer Time

FKST

-03:00

Falkland Islands Summer Time

GFT

-03:00

French Guiana Time

PYST

-03:00

Paraguay Summer Time

UYT

-03:00

Uruguay Time

WGT

-03:00

West Greenland Time

NDT

-02:30

Newfoundland Daylight Time

BRST

-02:00

Brasilia Summer Time

FKT

-02:00

Falkland Islands Time

FNT

-02:00

Fernando de Noronha Time

PMDT

-02:00

Pierre & Miquelon Daylight Time

UYST

-02:00

Uruguay Summer Time

WGST

-02:00

West Greenland Summer Time

AZOT

-01:00

Azores Time

EGT

-01:00

East Greenland Time

FNST

-01:00

Fernando de Noronha Summer Time

SET

-01:00

Seychelles Time

WAT

-01:00

West Africa Time

AZOST

+00:00

Azores Summer Time

EGST

+00:00

East Greenland Summer Time

GMT

+00:00

Greenwich Mean Time

UTC

+00:00

Universal Coordinated Time

UT

+00:00

Universal Time

WET

+00:00

Western Europe

ZULU

+00:00

Universal Time

Z

+00:00

ISO-8601 Universal Time

BST

+01:00

British Summer Time

CET

+01:00

Central European Time

DNT

+01:00

Dansk Normal Time

FST

+01:00

French Summer Time

MET

+01:00

Middle Europe Time

MEWT

+01:00

Middle Europe Winter Time

MEZ

+01:00

Middle Europe Zone

NOR

+01:00

Norway Standard Time

SWT

+01:00

Swedish Winter Time

WEST

+01:00

Western Europe Summer Time

WEtdST

+01:00

Western Europe Daylight Savings Time

BDST

+02:00

British Double Summer Time

CEST

+02:00

Central European Dayl.Time

CETDST

+02:00

Central European Dayl.Time

EET

+02:00

Eastern Europe, USSR Zone 1

FWT

+02:00

French Winter Time

IST

+02:00

Israel Time

MEST

+02:00

Middle Europe Summer Time

MEtdST

+02:00

Middle Europe Daylight Time

SST

+02:00

Swedish Summer Time

BT

+03:00

Baghdad Time

EAT

+03:00

East Africa Time

EAT

+03:00

Indian Antananarivo Time

EEST

+03:00

Eastern Europe Summer Time

EEtdST

+03:00

Eastern Europe Daylight Time

HMT

+03:00

Hellas Mediterranean Time

MSK

+03:00

Moscow Time

IRT

+03:30

Iran Time

IT

+03:30

Iran Time

AMT

+04:00

Armenia Time (Yerevan)

AZT

+04:00

Azerbaijan Time

EAST

+04:00

Indian Antananarivo Savings Time

GET

+04:00

Georgia Time

MSD

+04:00

Moscow Summer Time

MUT

+04:00

Mauritius Island Time

RET

+04:00

Reunion Island Time

SCT

+04:00

Mahe Island Time

AFT

+04:30

Kabul Time

AMST

+05:00

Armenia Summer Time (Yerevan)

AZST

+05:00

Azerbaijan Summer Time

GEST

+05:00

Georgia Summer Time

IOT

+05:00

Indian Chagos Time

KGT

+05:00

Kyrgyzstan Time

MVT

+05:00

Maldives Island Time

PKT

+05:00

Pakistan Time

TFT

+05:00

Kerguelen Time

TJT

+05:00

Tajikistan Time

TMT

+05:00

Turkmenistan Time

UZT

+05:00

Uzbekistan Time

YEKT

+05:00

Yekaterinburg Time

NPT

+05:45

Nepal Standard Time

ALMT

+06:00

Almaty Time

BDT

+06:00

Dacca Time

BTT

+06:00

Bhutan Time

DUSST

+06:00

Dushanbe Summer Time

KGST

+06:00

Kyrgyzstan Summer Time

LKT

+06:00

Lanka Time

MAWT

+06:00

Mawson, Antarctica

NOVT

+06:00

Novosibirsk Standard Time

OMST

+06:00

Omsk Time

UZST

+06:00

Uzbekistan Summer Time

YEKST

+06:00

Yekaterinburg Summer Time

CCT

+06:30

Indian Cocos (Island) Time

MMT

+06:30

Myanmar Time

ALMST

+07:00

Almaty Savings Time

CVT

+07:00

Christmas Island Time (Indian Ocean)

CXT

+07:00

Christmas Island Time (Indian Ocean)

DAVT

+07:00

Davis Time (Antarctica)

ICT

+07:00

Indochina Time

JAVT

+07:00

Java Time

KRAST

+07:00

Krasnoyarsk Summer Time

NOVST

+07:00

Novosibirsk Summer Time

OMSST

+07:00

Omsk Summer Time

WAST

+07:00

West Australian Std Time

JT

+07:30

Java Time

AWST

+08:00

Western Australia

BNT

+08:00

Brunei Darussalam Time

BORT

+08:00

Borneo Time (Indonesia)

CCT

+08:00

China Coast Time

HKT

+08:00

Hong Kong Time

IRKT

+08:00

Irkutsk Time

KRAT

+08:00

Krasnoyarsk Standard Time

MYT

+08:00

Malaysia Time

PHT

+08:00

Phillipine Time

ULAT

+08:00

Ulan Bator Time

WADT

+08:00

West Australian DST

WST

+08:00  

West Australian Standard   Time

MT

+08:30

Moluccas Time

AWSST

+09:00

Western Australia Time

IRKST

+09:00

Irkutsk Summer Time

JAYT

+09:00

Jayapura Time (Indonesia)

JST

+09:00

Japan Std Time, USSR Zone 8

KST

+09:00

Korea Standard Time

PWT

+09:00

Palau Time

ULAST

+09:00

Ulan Bator Summer Time

WDT

+09:00

West Australian DST

YAKT

+09:00

Yakutsk Time

ACST

+09:30

Central Australia

CAST

+09:30

Central Australian ST

SAST

+09:30

South Australian Std Time

SAT

+09:30

South Australian Std Time

AEST

+10:00

Australia Eastern Std Time

DDUT

+10:00

Dumont-d'Urville Time (Antarctica)

EAST

+10:00

East Australian Std Time

EST

+10:00

Australia Eastern Std Time

GST

+10:00

Guam Std Time, USSR Zone 9

KDT

+10:00

Korea Daylight Time

LIGT

+10:00

From Melbourne, Australia

MPT

+10:00

North Mariana Islands Time

PGT

+10:00

Papua New Guinea Time

trUK

+10:00

Truk Time

VLAT

+10:00

Vladivostok Time

YAKST

+10:00

Yakutsk Summer Time

YAPT

+10:00

Yap Time (Micronesia)

ACSST

+10:30

Central Australia Time

CADT

+10:30

Central Australian DST

CST

+10:30

Australia Central Std Time

LHST

+10:30

Lord Howe Standard Time, Australia

SADT

+10:30

South Australian Daylight Time

AESST

+11:00

Eastern Australia

LHDT

+11:00

Lord Howe Daylight Time, Australia

MAGT

+11:00

Magadan Time

NCT

+11:00

New Caledonia Time

PONT

+11:00

Ponape Time (Micronesia)

VLAST

+11:00

Vladivostok Summer Time

VUT

+11:00

Vanuata Time

ANAT

+12:00

Anadyr Time (Russia)

CKT

+12:00

Cook Islands Time

GILT

+12:00

Gilbert Islands Time

IDLE

+12:00

International Date Line, East

KOST

+12:00

Kosrae Time

MAGST

+12:00

Magadan Summer Time

MHT

+12:00

Kwajalein Time

NZST

+12:00

New Zealand Standard Time

NZT

+12:00

New Zealand Time

PETT

+12:00

Petropavlovsk-Kamchatski Time

TVT

+12:00

Tuvalu Time

WAKT

+12:00

Wake Time

WFT

+12:00

Wallis and Futuna Time

CHAST

+12:45

Chatham Island Time

ANAST

+13:00

Anadyr Summer Time (Russia)

NZDT

+13:00

New Zealand Daylight Time

PETST

+13:00

Petropavlovsk-Kamchatski Summer Time

PHOT

+13:00

Phoenix Islands (Kiribati) Time

TOT

+13:00

Tonga Time

CHADT

+13:45

Chatham Island Daylight Time

LINT

+14:00

Line Islands Time (Kiribati)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM