C# 時區

  • Windows 時區,在 Windows 平臺實現,例:"China Standard Time"
  • Olson(奧爾森)時區,在 Linux,Mac,IOS,Andorid,JavaScript 和許多其他平臺上廣泛實現,例:"Asia/Shanghai"

如果系統不考慮全球化的話,那麼我們不用考慮時區的問題,因爲我們可以認爲中國境內的計算機全部用的是北京時間。

安裝以下兩個 Nuget 包

  • NodaTime
  • TimeZoneConverter

TimeZoneInfo

TimeZoneInfo 是一個關於時區的靜態類,可以使得我們方便的操作與時區相關的信息
對於一個開放於全球的網站或服務,在時間上的顯示是一個問題,因爲各個國家都會有所謂的時差,好在 .Net 提供了 TimeZoneInfo 類來解決這個問題。
TimeZoneInfo 類的方法可用於將一個時區的時間轉換爲其他任意時區的相應時間

靜態成員:

  • Local 屬性:實例化表示本地時區的 TimeZoneInfo 對象。
  • Utc 屬性:實例化表示 UTC 時區的 TimeZoneInfo 對象。
  • CreateCustomTimeZone()使用應用程序提供的數據創建自定義時區。 - CreateCustomTimeZone 方法創建在本地系統註冊表中未定義的時區。然後可使用 ToSerializedString 屬性將時區對象的信息保存爲字符串,該字符串可以以應用程序可訪問的某種格式存儲。使用 FromSerializedString 方法可將序列化字符串轉換回 TimeZoneInfo 對象
  • FindSystemTimeZoneById()根據時區的標識符實例化在系統註冊表中定義的時區。
  • FromSerializedString()反序列化一個字符串值,以重新創建先前已序列化的 TimeZoneInfo 對象。
  • GetSystemTimeZones()返回 TimeZoneInfo 對象的可枚舉的 ReadOnlyCollection<(Of <(T>)>),它表示本地系統上可用的所有時區。

獲取 TimeZoneInfo

//.net 自帶
Console.WriteLine(TimeZoneInfo.Local);//服務器時間
Console.WriteLine(TimeZoneInfo.Utc);//UTC時間


//TimeZoneConverter
Console.WriteLine(TZConvert.GetTimeZoneInfo("Central Standard Time"));//中部時間(美國和加拿大)
Console.WriteLine(TZConvert.GetTimeZoneInfo("America/New_York"));//美國時間
Console.WriteLine(TZConvert.GetTimeZoneInfo("Asia/Shanghai"));//上海時間

時間轉換

TimeZoneInfo timeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("China Standard Time");
DateTime dateTime = TimeZoneInfo.ConvertTime(DateTime.Now, timeZoneInfo);

DateTime dt = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now, TimeZoneInfo.Local);
DateTime dt1 = TimeZoneInfo.ConvertTimeFromUtc(dt, timeZoneInfo);


//NodaTime方式
Instant now = SystemClock.Instance.GetCurrentInstant();
var shanghaiZone = DateTimeZoneProviders.Tzdb["Asia/Shanghai"];
var shanghaiZone2 = NodaTime.DateTimeZoneProviders.Tzdb.GetZoneOrNull("America/New_York");
DateTime dateTime3= now.InZone(shanghaiZone).ToDateTimeUnspecified();

獲取全部 TimeZoneInfo

代碼

//獲取所有Standard Time
foreach (TimeZoneInfo z in TimeZoneInfo.GetSystemTimeZones())
{
    Console.WriteLine(z.Id + "," + z.BaseUtcOffset + "," + z.StandardName + "," + z.DisplayName + "," + z.DaylightName);

    System.Diagnostics.Debug.WriteLine(z.Id + "," + z.BaseUtcOffset + "," + z.StandardName + "," + z.DisplayName + "," + z.DaylightName);
}

//NodaTime
var list = NodaTime.DateTimeZoneProviders.Bcl.Ids;
時區列表
{
    tZCode : "Morocco Standard Time",
    tZDesc : "(GMT) Casablanca"
},
{
    tZCode : "GMT Standard Time",
    tZDesc : "(GMT) Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London"
},
{
    tZCode : "Greenwich Standard Time",
    tZDesc : "(GMT) Monrovia, Reykjavik"
},
{
    tZCode : "W. Europe Standard Time",
    tZDesc : "(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna"
},
{
    tZCode : "Central Europe Standard Time",
    tZDesc : "(GMT+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague"
},
{
    tZCode : "Romance Standard Time",
    tZDesc : "(GMT+01:00) Brussels, Copenhagen, Madrid, Paris"
},
{
    tZCode : "Central European Standard Time",
    tZDesc : "(GMT+01:00) Sarajevo, Skopje, Warsaw, Zagreb"
},
{
    tZCode : "W. Central Africa Standard Time",
    tZDesc : "(GMT+01:00) West Central Africa"
},
{
    tZCode : "Jordan Standard Time",
    tZDesc : "(GMT+02:00) Amman"
},
{
    tZCode : "GTB Standard Time",
    tZDesc : "(GMT+02:00) Athens, Bucharest, Istanbul"
},
{
    tZCode : "Middle East Standard Time",
    tZDesc : "(GMT+02:00) Beirut"
},
{
    tZCode : "Egypt Standard Time",
    tZDesc : "(GMT+02:00) Cairo"
},
{
    tZCode : "South Africa Standard Time",
    tZDesc : "(GMT+02:00) Harare, Pretoria"
},
{
    tZCode : "FLE Standard Time",
    tZDesc : "(GMT+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius"
},
{
    tZCode : "Israel Standard Time",
    tZDesc : "(GMT+02:00) Jerusalem"
},
{
    tZCode : "E. Europe Standard Time",
    tZDesc : "(GMT+02:00) Minsk"
},
{
    tZCode : "Namibia Standard Time",
    tZDesc : "(GMT+02:00) Windhoek"
},
{
    tZCode : "Arabic Standard Time",
    tZDesc : "(GMT+03:00) Baghdad"
},
{
    tZCode : "Arab Standard Time",
    tZDesc : "(GMT+03:00) Kuwait, Riyadh"
},
{
    tZCode : "Russian Standard Time",
    tZDesc : "(GMT+03:00) Moscow, St. Petersburg, Volgograd"
},
{
    tZCode : "E. Africa Standard Time",
    tZDesc : "(GMT+03:00) Nairobi"
},
{
    tZCode : "Georgian Standard Time",
    tZDesc : "(GMT+03:00) Tbilisi"
},
{
    tZCode : "Iran Standard Time",
    tZDesc : "(GMT+03:30) Tehran"
},
{
    tZCode : "Arabian Standard Time",
    tZDesc : "(GMT+04:00) Abu Dhabi, Muscat"
},
{
    tZCode : "Azerbaijan Standard Time",
    tZDesc : "(GMT+04:00) Baku"
},
{
    tZCode : "Mauritius Standard Time",
    tZDesc : "(GMT+04:00) Port Louis"
},
{
    tZCode : "Caucasus Standard Time",
    tZDesc : "(GMT+04:00) Yerevan"
},
{
    tZCode : "Afghanistan Standard Time",
    tZDesc : "(GMT+04:30) Kabul"
},
{
    tZCode : "Ekaterinburg Standard Time",
    tZDesc : "(GMT+05:00) Ekaterinburg"
},
{
    tZCode : "Pakistan Standard Time",
    tZDesc : "(GMT+05:00) Islamabad, Karachi"
},
{
    tZCode : "West Asia Standard Time",
    tZDesc : "(GMT+05:00) Tashkent"
},
{
    tZCode : "India Standard Time",
    tZDesc : "(GMT+05:30) Chennai, Kolkata, Mumbai, New Delhi"
},
{
    tZCode : "Sri Lanka Standard Time",
    tZDesc : "(GMT+05:30) Sri Jayawardenepura"
},
{
    tZCode : "Nepal Standard Time",
    tZDesc : "(GMT+05:45) Kathmandu"
},
{
    tZCode : "N. Central Asia Standard Time",
    tZDesc : "(GMT+06:00) Almaty, Novosibirsk"
},
{
    tZCode : "Central Asia Standard Time",
    tZDesc : "(GMT+06:00) Astana, Dhaka"
},
{
    tZCode : "Myanmar Standard Time",
    tZDesc : "(GMT+06:30) Yangon (Rangoon)"
},
{
    tZCode : "SE Asia Standard Time",
    tZDesc : "(GMT+07:00) Bangkok, Hanoi, Jakarta"
},
{
    tZCode : "North Asia Standard Time",
    tZDesc : "(GMT+07:00) Krasnoyarsk"
},
{
    tZCode : "China Standard Time",
    tZDesc : "(GMT+08:00) Beijing, Chongqing, Hong Kong, Urumqi"
},
{
    tZCode : "North Asia East Standard Time",
    tZDesc : "(GMT+08:00) Irkutsk, Ulaan Bataar"
},
{
    tZCode : "Singapore Standard Time",
    tZDesc : "(GMT+08:00) Kuala Lumpur, Singapore"
},
{
    tZCode : "W. Australia Standard Time",
    tZDesc : "(GMT+08:00) Perth"
},
{
    tZCode : "Taipei Standard Time",
    tZDesc : "(GMT+08:00) Taipei"
},
{
    tZCode : "Tokyo Standard Time",
    tZDesc : "(GMT+09:00) Osaka, Sapporo, Tokyo"
},
{
    tZCode : "Korea Standard Time",
    tZDesc : "(GMT+09:00) Seoul"
},
{
    tZCode : "Yakutsk Standard Time",
    tZDesc : "(GMT+09:00) Yakutsk"
},
{
    tZCode : "Cen. Australia Standard Time",
    tZDesc : "(GMT+09:30) Adelaide"
},
{
    tZCode : "AUS Central Standard Time",
    tZDesc : "(GMT+09:30) Darwin"
},
{
    tZCode : "E. Australia Standard Time",
    tZDesc : "(GMT+10:00) Brisbane"
},
{
    tZCode : "AUS Eastern Standard Time",
    tZDesc : "(GMT+10:00) Canberra, Melbourne, Sydney"
},
{
    tZCode : "West Pacific Standard Time",
    tZDesc : "(GMT+10:00) Guam, Port Moresby"
},
{
    tZCode : "Tasmania Standard Time",
    tZDesc : "(GMT+10:00) Hobart"
},
{
    tZCode : "Vladivostok Standard Time",
    tZDesc : "(GMT+10:00) Vladivostok"
},
{
    tZCode : "Central Pacific Standard Time",
    tZDesc : "(GMT+11:00) Magadan, Solomon Is., New Caledonia"
},
{
    tZCode : "New Zealand Standard Time",
    tZDesc : "(GMT+12:00) Auckland, Wellington"
},
{
    tZCode : "Fiji Standard Time",
    tZDesc : "(GMT+12:00) Fiji, Kamchatka, Marshall Is."
},
{
    tZCode : "Tonga Standard Time",
    tZDesc : "(GMT+13:00) Nuku'alofa"
},
{
    tZCode : "Azores Standard Time",
    tZDesc : "(GMT-01:00) Azores"
},
{
    tZCode : "Cape Verde Standard Time",
    tZDesc : "(GMT-01:00) Cape Verde Is."
},
{
    tZCode : "Mid-Atlantic Standard Time",
    tZDesc : "(GMT-02:00) Mid-Atlantic"
},
{
    tZCode : "E. South America Standard Time",
    tZDesc : "(GMT-03:00) Brasilia"
},
{
    tZCode : "Argentina Standard Time",
    tZDesc : "(GMT-03:00) Buenos Aires"
},
{
    tZCode : "SA Eastern Standard Time",
    tZDesc : "(GMT-03:00) Georgetown"
},
{
    tZCode : "Greenland Standard Time",
    tZDesc : "(GMT-03:00) Greenland"
},
{
    tZCode : "Montevideo Standard Time",
    tZDesc : "(GMT-03:00) Montevideo"
},
{
    tZCode : "Newfoundland Standard Time",
    tZDesc : "(GMT-03:30) Newfoundland"
},
{
    tZCode : "Atlantic Standard Time",
    tZDesc : "(GMT-04:00) Atlantic Time (Canada)"
},
{
    tZCode : "SA Western Standard Time",
    tZDesc : "(GMT-04:00) La Paz"
},
{
    tZCode : "Central Brazilian Standard Time",
    tZDesc : "(GMT-04:00) Manaus"
},
{
    tZCode : "Pacific SA Standard Time",
    tZDesc : "(GMT-04:00) Santiago"
},
{
    tZCode : "Venezuela Standard Time",
    tZDesc : "(GMT-04:30) Caracas"
},
{
    tZCode : "SA Pacific Standard Time",
    tZDesc : "(GMT-05:00) Bogota, Lima, Quito, Rio Branco"
},
{
    tZCode : "Eastern Standard Time",
    tZDesc : "(GMT-05:00) Eastern Time (US & Canada)"
},
{
    tZCode : "US Eastern Standard Time",
    tZDesc : "(GMT-05:00) Indiana (East)"
},
{
    tZCode : "Central America Standard Time",
    tZDesc : "(GMT-06:00) Central America"
},
{
    tZCode : "Central Standard Time",
    tZDesc : "(GMT-06:00) Central Time (US & Canada)"
},
{
    tZCode : "Central Standard Time (Mexico)",
    tZDesc : "(GMT-06:00) Guadalajara, Mexico City, Monterrey"
},
{
    tZCode : "Canada Central Standard Time",
    tZDesc : "(GMT-06:00) Saskatchewan"
},
{
    tZCode : "US Mountain Standard Time",
    tZDesc : "(GMT-07:00) Arizona"
},
{
    tZCode : "Mountain Standard Time (Mexico)",
    tZDesc : "(GMT-07:00) Chihuahua, La Paz, Mazatlan"
},
{
    tZCode : "Mountain Standard Time",
    tZDesc : "(GMT-07:00) Mountain Time (US & Canada)"
},
{
    tZCode : "Pacific Standard Time",
    tZDesc : "(GMT-08:00) Pacific Time (US & Canada)"
},
{
    tZCode : "Pacific Standard Time (Mexico)",
    tZDesc : "(GMT-08:00) Tijuana, Baja California"
},
{
    tZCode : "Alaskan Standard Time",
    tZDesc : "(GMT-09:00) Alaska"
},
{
    tZCode : "Hawaiian Standard Time",
    tZDesc : "(GMT-10:00) Hawaii"
},
{
    tZCode : "Samoa Standard Time",
    tZDesc : "(GMT-11:00) Midway Island, Samoa"
},
{
    tZCode : "Dateline Standard Time",
    tZDesc : "(GMT-12:00) International Date Line West"
}

Windwos 時區國家關係

對應關係列表
/*
Dateline Standard Time,(GMT-12:00)日界線西,國際日期變更線標準時間
Samoa Standard Time,(GMT-11:00) 中途島,薩摩亞羣島,薩摩亞羣島標準時間
Hawaiian Standard Time,(GMT-10:00) 夏威夷,夏威夷標準時間
Alaskan Standard Time,(GMT-09:00) 阿拉斯加,阿拉斯加標準時間
Pacific Standard Time,(GMT-08:00) 太平洋時間(美國和加拿大);蒂華納,太平洋標準時間
US Mountain Standard Time,(GMT-07:00) 亞利桑那,美國山地標準時間
Mountain Standard Time,(GMT-07:00) 山地時間(美國和加拿大),山地標準時間
Mexico Standard Time 2,(GMT-07:00)奇瓦瓦,拉巴斯,馬紮特蘭,墨西哥標準時間 2
Central America Standard Time,(GMT-06:00) 中美洲,中美洲標準時間
Central Standard Time,(GMT-06:00) 中部時間(美國和加拿大),中部標準時間
Canada Central Standard Time,(GMT-06:00) 薩斯喀徹溫,加拿大中部標準時間
Mexico Standard Time,(GMT-06:00)瓜達拉哈拉,墨西哥城,蒙特雷,墨西哥標準時間
Eastern Standard Time,(GMT-05:00) 東部時間(美國和加拿大),東部標準時間
US Eastern Standard Time,(GMT-05:00) 印地安那州(東部),美國東部標準時間
SA Pacific Standard Time,(GMT-05:00) 波哥大,利馬,基多,南美州太平洋標準時間
SA Western Standard Time,(GMT-04:00) 加拉加斯,拉巴斯,南美州西部標準時間
Pacific SA Standard Time,(GMT-04:00) 聖地亞哥,南美州太平洋標準時間
Atlantic Standard Time,(GMT-04:00) 大西洋時間(加拿大),大西洋標準時間
Newfoundland Standard Time,(GMT-03:30) 紐芬蘭,紐芬蘭標準時間
E. South America Standard Time,(GMT-03:00) 巴西利亞,南美州東部標準時間
SA Eastern Standard Time,(GMT-03:00) 布宜諾斯艾利斯,喬治敦,南美州東部標準時間
Greenland Standard Time,(GMT-03:00) 格陵蘭,格陵蘭東部標準時間
Mid-Atlantic Standard Time,(GMT-02:00) 中大西洋,中大西洋標準時間
Azores Standard Time,(GMT-01:00) 亞速爾羣島,亞速爾羣島標準時間
Cape Verde Standard Time,(GMT-01:00) 佛得角羣島,佛得角羣島標準時間
Greenwich Standard Time,(GMT) 卡薩布蘭卡,蒙羅維亞,格林威治標準時間
GMT Standard Time,(GMT) 格林威治標準時間: 都柏林, 愛丁堡, 倫敦, 里斯本,格林威治標準時間
W. Central Africa Standard Time,(GMT+01:00) 中非西部,中非西部標準時間
Romance Standard Time,(GMT+01:00) 布魯塞爾,哥本哈根,馬德里,巴黎,羅馬標準時間
Central European Standard Time,(GMT+01:00) 薩拉熱窩,斯科普里,華沙,薩格勒布,中歐標準時間
Central Europe Standard Time,(GMT+01:00) 貝爾格萊德,布拉迪斯拉發,布達佩斯,盧布爾雅那,布拉格,中歐標準時間
W. Europe Standard Time,(GMT+01:00) 阿姆斯特丹,柏林,伯爾尼,羅馬,斯德哥爾摩,維也納,西歐標準時間
South Africa Standard Time,(GMT+02:00) 哈拉雷,比勒陀利亞,南非標準時間
E. Europe Standard Time,(GMT+02:00) 布加勒斯特,東歐標準時間
Egypt Standard Time,(GMT+02:00) 開羅,埃及標準時間
Israel Standard Time,(GMT+02:00) 耶路撒冷,耶路撒冷標準時間
FLE Standard Time,(GMT+02:00) 赫爾辛基,基輔,里加,索非亞,塔林,維爾紐斯,FLE 標準時間
GTB Standard Time,(GMT+02:00) 雅典,貝魯特,伊斯坦布爾,明斯克,GTB 標準時間
E. Africa Standard Time,(GMT+03:00) 內羅畢,東非標準時間
Arabic Standard Time,(GMT+03:00) 巴格達,阿拉伯標準時間
Arab Standard Time,(GMT+03:00) 科威特,利雅得,阿拉伯標準時間
Russian Standard Time,(GMT+03:00) 莫斯科,聖彼得堡, 伏爾加格勒,俄羅斯標準時間
Iran Standard Time,(GMT+03:30) 德黑蘭,伊朗標準時間
Caucasus Standard Time,(GMT+04:00) 巴庫,第比利斯,埃裏溫,高加索標準時間
Arabian Standard Time,(GMT+04:00) 阿布扎比,馬斯喀特,阿拉伯半島標準時間
Afghanistan Standard Time,(GMT+04:30) 喀布爾,阿富汗標準時間
West Asia Standard Time,(GMT+05:00) 伊斯蘭堡,卡拉奇,塔什干,西亞標準時間
Ekaterinburg Standard Time,(GMT+05:00) 葉卡捷琳堡,葉卡捷琳堡標準時間
India Standard Time,(GMT+05:30) 馬德拉斯,加爾各答,孟買,新德里,印度標準時間
Nepal Standard Time,(GMT+05:45) 加德滿都,尼泊爾標準時間
Sri Lanka Standard Time,(GMT+06:00) 斯里哈亞華登尼普拉,斯里蘭卡標準時間
N. Central Asia Standard Time,(GMT+06:00) 阿拉木圖,新西伯利亞,中亞北部標準時間
Central Asia Standard Time,(GMT+06:00) 阿斯塔納,達卡,中亞標準時間
Myanmar Standard Time,(GMT+06:30) 仰光,緬甸標準時間
North Asia Standard Time,(GMT+07:00) 克拉斯諾亞爾斯克,北亞標準時間
SE Asia Standard Time,(GMT+07:00) 曼谷,河內,雅加達,東南亞標準時間
North Asia East Standard Time,(GMT+08:00) 伊爾庫茨克,烏蘭巴圖,北亞東部標準時間
China Standard Time,(GMT+08:00) 北京,重慶,香港特別行政區,烏魯木齊,中國標準時間
Taipei Standard Time,(GMT+08:00) 臺北,臺北標準時間
Singapore Standard Time,(GMT+08:00) 吉隆坡,新加坡,馬來西亞半島標準時間
W. Australia Standard Time,(GMT+08:00) 珀斯,澳大利亞西部標準時間
Tokyo Standard Time,(GMT+09:00) 大坂,札幌,東京,東京標準時間
Korea Standard Time,(GMT+09:00) 漢城,韓國標準時間
Yakutsk Standard Time,(GMT+09:00) 雅庫茨克,雅庫茨克標準時間
AUS Central Standard Time,(GMT+09:30) 達爾文,澳大利亞中部標準時間
Cen. Australia Standard Time,(GMT+09:30) 阿德萊德,澳大利亞中部標準時間
West Pacific Standard Time,(GMT+10:00) 關島,莫爾茲比港,西太平洋標準時間
AUS Eastern Standard Time,(GMT+10:00) 堪培拉,墨爾本,悉尼,澳大利亞東部標準時間
E. Australia Standard Time,(GMT+10:00) 布里斯班,澳大利亞東部標準時間
Vladivostok Standard Time,(GMT+10:00) 符拉迪沃斯託克,符拉迪沃斯託克標準時間
Tasmania Standard Time,(GMT+10:00) 霍巴特,塔斯馬尼亞島標準時間
Central Pacific Standard Time,(GMT+11:00) 馬加丹,索羅門羣島,新喀里多尼亞,太平洋中部標準時間
New Zealand Standard Time,(GMT+12:00) 奧克蘭,惠靈頓,新西蘭標準時間
Fiji Standard Time,(GMT+12:00) 斐濟,堪察加半島,馬紹爾羣島,斐濟標準時間
Tonga Standard Time,(GMT+13:00) 努庫阿洛法,湯加標準時間
*/

獲取服務器Olson時區

var x = NodaTime.DateTimeZoneProviders.Tzdb.GetSystemDefault();
Console.WriteLine(x);

獲取全部Olson時區

代碼

using NodaTime.TimeZones;
using NodaTime.Extensions;

//第一種
foreach (var item in TzdbDateTimeZoneSource.Default.ZoneLocations.ToList())
{
    Console.WriteLine($"{item.ZoneId} ({item.CountryName})");
}

//第二種
var list2 = NodaTime.DateTimeZoneProviders.Tzdb.Ids;

//第三種
var list3 = NodaTime.DateTimeZoneProviders.Tzdb.GetAllZones().ToList();
時區列表
var olsonWindowsTimes = new Dictionary<string, string>()
    {
        { "Africa/Bangui", "W. Central Africa Standard Time" },
        { "Africa/Cairo", "Egypt Standard Time" },
        { "Africa/Casablanca", "Morocco Standard Time" },
        { "Africa/Harare", "South Africa Standard Time" },
        { "Africa/Johannesburg", "South Africa Standard Time" },
        { "Africa/Lagos", "W. Central Africa Standard Time" },
        { "Africa/Monrovia", "Greenwich Standard Time" },
        { "Africa/Nairobi", "E. Africa Standard Time" },
        { "Africa/Windhoek", "Namibia Standard Time" },
        { "America/Anchorage", "Alaskan Standard Time" },
        { "America/Argentina/San_Juan", "Argentina Standard Time" },
        { "America/Asuncion", "Paraguay Standard Time" },
        { "America/Bahia", "Bahia Standard Time" },
        { "America/Bogota", "SA Pacific Standard Time" },
        { "America/Buenos_Aires", "Argentina Standard Time" },
        { "America/Caracas", "Venezuela Standard Time" },
        { "America/Cayenne", "SA Eastern Standard Time" },
        { "America/Chicago", "Central Standard Time" },
        { "America/Chihuahua", "Mountain Standard Time (Mexico)" },
        { "America/Cuiaba", "Central Brazilian Standard Time" },
        { "America/Denver", "Mountain Standard Time" },
        { "America/Fortaleza", "SA Eastern Standard Time" },
        { "America/Godthab", "Greenland Standard Time" },
        { "America/Guatemala", "Central America Standard Time" },
        { "America/Halifax", "Atlantic Standard Time" },
        { "America/Indianapolis", "US Eastern Standard Time" },
        { "America/Indiana/Indianapolis", "US Eastern Standard Time" },
        { "America/La_Paz", "SA Western Standard Time" },
        { "America/Los_Angeles", "Pacific Standard Time" },
        { "America/Mexico_City", "Mexico Standard Time" },
        { "America/Montevideo", "Montevideo Standard Time" },
        { "America/New_York", "Eastern Standard Time" },
        { "America/Noronha", "UTC-02" },
        { "America/Phoenix", "US Mountain Standard Time" },
        { "America/Regina", "Canada Central Standard Time" },
        { "America/Santa_Isabel", "Pacific Standard Time (Mexico)" },
        { "America/Santiago", "Pacific SA Standard Time" },
        { "America/Sao_Paulo", "E. South America Standard Time" },
        { "America/St_Johns", "Newfoundland Standard Time" },
        { "America/Tijuana", "Pacific Standard Time" },
        { "Antarctica/McMurdo", "New Zealand Standard Time" },
        { "Atlantic/South_Georgia", "UTC-02" },
        { "Asia/Almaty", "Central Asia Standard Time" },
        { "Asia/Amman", "Jordan Standard Time" },
        { "Asia/Baghdad", "Arabic Standard Time" },
        { "Asia/Baku", "Azerbaijan Standard Time" },
        { "Asia/Bangkok", "SE Asia Standard Time" },
        { "Asia/Beirut", "Middle East Standard Time" },
        { "Asia/Calcutta", "India Standard Time" },
        { "Asia/Colombo", "Sri Lanka Standard Time" },
        { "Asia/Damascus", "Syria Standard Time" },
        { "Asia/Dhaka", "Bangladesh Standard Time" },
        { "Asia/Dubai", "Arabian Standard Time" },
        { "Asia/Irkutsk", "North Asia East Standard Time" },
        { "Asia/Jerusalem", "Israel Standard Time" },
        { "Asia/Kabul", "Afghanistan Standard Time" },
        { "Asia/Kamchatka", "Kamchatka Standard Time" },
        { "Asia/Karachi", "Pakistan Standard Time" },
        { "Asia/Katmandu", "Nepal Standard Time" },
        { "Asia/Kolkata", "India Standard Time" },
        { "Asia/Krasnoyarsk", "North Asia Standard Time" },
        { "Asia/Kuala_Lumpur", "Singapore Standard Time" },
        { "Asia/Kuwait", "Arab Standard Time" },
        { "Asia/Magadan", "Magadan Standard Time" },
        { "Asia/Muscat", "Arabian Standard Time" },
        { "Asia/Novosibirsk", "N. Central Asia Standard Time" },
        { "Asia/Oral", "West Asia Standard Time" },
        { "Asia/Rangoon", "Myanmar Standard Time" },
        { "Asia/Riyadh", "Arab Standard Time" },
        { "Asia/Seoul", "Korea Standard Time" },
        { "Asia/Shanghai", "China Standard Time" },
        { "Asia/Singapore", "Singapore Standard Time" },
        { "Asia/Taipei", "Taipei Standard Time" },
        { "Asia/Tashkent", "West Asia Standard Time" },
        { "Asia/Tbilisi", "Georgian Standard Time" },
        { "Asia/Tehran", "Iran Standard Time" },
        { "Asia/Tokyo", "Tokyo Standard Time" },
        { "Asia/Ulaanbaatar", "Ulaanbaatar Standard Time" },
        { "Asia/Vladivostok", "Vladivostok Standard Time" },
        { "Asia/Yakutsk", "Yakutsk Standard Time" },
        { "Asia/Yekaterinburg", "Ekaterinburg Standard Time" },
        { "Asia/Yerevan", "Armenian Standard Time" },
        { "Atlantic/Azores", "Azores Standard Time" },
        { "Atlantic/Cape_Verde", "Cape Verde Standard Time" },
        { "Atlantic/Reykjavik", "Greenwich Standard Time" },
        { "Australia/Adelaide", "Cen. Australia Standard Time" },
        { "Australia/Brisbane", "E. Australia Standard Time" },
        { "Australia/Darwin", "AUS Central Standard Time" },
        { "Australia/Hobart", "Tasmania Standard Time" },
        { "Australia/Perth", "W. Australia Standard Time" },
        { "Australia/Sydney", "AUS Eastern Standard Time" },
        { "Etc/GMT", "UTC" },
        { "Etc/GMT+11", "UTC-11" },
        { "Etc/GMT+12", "Dateline Standard Time" },
        { "Etc/GMT+2", "UTC-02" },
        { "Etc/GMT-12", "UTC+12" },
        { "Europe/Amsterdam", "W. Europe Standard Time" },
        { "Europe/Athens", "GTB Standard Time" },
        { "Europe/Belgrade", "Central Europe Standard Time" },
        { "Europe/Berlin", "W. Europe Standard Time" },
        { "Europe/Brussels", "Romance Standard Time" },
        { "Europe/Budapest", "Central Europe Standard Time" },
        { "Europe/Dublin", "GMT Standard Time" },
        { "Europe/Helsinki", "FLE Standard Time" },
        { "Europe/Istanbul", "GTB Standard Time" },
        { "Europe/Kiev", "FLE Standard Time" },
        { "Europe/London", "GMT Standard Time" },
        { "Europe/Minsk", "E. Europe Standard Time" },
        { "Europe/Moscow", "Russian Standard Time" },
        { "Europe/Paris", "Romance Standard Time" },
        { "Europe/Sarajevo", "Central European Standard Time" },
        { "Europe/Warsaw", "Central European Standard Time" },
        { "Indian/Mauritius", "Mauritius Standard Time" },
        { "Pacific/Apia", "Samoa Standard Time" },
        { "Pacific/Auckland", "New Zealand Standard Time" },
        { "Pacific/Fiji", "Fiji Standard Time" },
        { "Pacific/Guadalcanal", "Central Pacific Standard Time" },
        { "Pacific/Guam", "West Pacific Standard Time" },
        { "Pacific/Honolulu", "Hawaiian Standard Time" },
        { "Pacific/Pago_Pago", "UTC-11" },
        { "Pacific/Port_Moresby", "West Pacific Standard Time" },
        { "Pacific/Tongatapu", "Tonga Standard Time" }
    };

sqlserver 存儲時間

推薦 sqlserver 中使用:datetime2。

  • date:3字節,表示範圍:0001-01-01 到 9999-12-31
  • datetime:8字節,表示範圍: 1753-01-01 00:00:00 到 9999-12-31 23:59:59
  • datetime2:6-8個字節,表示範圍:0001-01-01 00:00:00 到 9999-12-31 23:59:59.9999999
  • smalldatetime:4個字節,表示範圍:1900-01-01 00:00:00 到 2079-06-06 23:59:59
  • time:5個字節,表示範圍: 00:00:00.0000000 到 23:59:59.9999999
  • datetimeoffset:10個字節,表示範圍:0001-01-01 00:00:00 到 23:59:59.9999999,可表示時區
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章