常見時區縮寫可參考:html
http://time.123cha.com/knowledge/6.htmlide
常見時區縮寫以下:spa
IDLE +12:00 國際日期變動線,東邊
NZDT +13:00 新西蘭夏時制
NZST +12:00 新西蘭標準時間
NZT +12:00 新西蘭時間
AESST +11:00 澳大利亞東部標準夏時制
ACSST +10:30 中澳大利亞標準夏時制
CADT +10:30 中澳大利亞夏時制
SADT +10:30 南澳大利亞夏時制
AEST +10:00 澳大利亞東部標準時間
EAST +10:00 東澳大利亞標準時間
GST +10:00 關島標準時間,俄羅斯時區 9
LIGT +10:00 澳大利亞墨爾本
SAST +09:30 南澳大利亞標準時間
CAST +09:30 中澳大利亞標準時間
AWSST +09:00 澳大利亞西部標準夏時制
JST +09:00 日本標準時間,(俄羅斯時區 8)
KST +09:00 韓國標準時間
WDT +09:00 西澳大利亞夏時制
SST +02:00 瑞典夏時制
BST +01:00 英國夏時制
CET +01:00 中歐時間
FST +01:00 法國夏時制
MET +01:00 中歐時間
MEWT +01:00 中歐冬時制
NDT -02:30 紐芬蘭(Newfoundland)白晝時間
ADT -03:00 大西洋白晝時間
AWT -03:00 (未知)
BRT -03:00 Brasilia 時間
NFT -03:30 紐芬蘭(Newfoundland)標準時間
NST -03:30 紐芬蘭(Newfoundland)標準時間
AST -04:00 大西洋標準時間(加拿大)
ACST -04:00 Atlantic/Porto Acre 夏令時
ACT -05:00 Atlantic/Porto Acre 標準時間
EDT -04:00 東部白晝時間
CDT -05:00 中部白晝時間
EST -05:00 東部標準時間
CST -06:00 中部標準時間
MDT -06:00 山區白晝時間
MST -07:00 山區標準時間
PDT -07:00 太平洋白晝時間
AKDT -08:00 阿拉斯加白晝時間
PST -08:00 太平洋標準時間
YDT -08:00 Yukon 白晝時間
AKST -09:00 阿拉斯加標準時間
HDT -09:00 夏威儀/阿拉斯加白晝時間
YST -09:00 Yukon 標準時
MART -09:30 馬克薩司羣島時間
AHST -10:00 夏威夷-阿拉斯加標準時間
HST -10:00 夏威夷標準時間
CAT -10:00 中阿拉斯加時間
NT -11:00 州時間(Nome Time)
IDLW -12:00 國際日期變動線,西邊code
那如何解析如 "IDLW -12:00" 這樣的字符串呢,其實很簡單,把代碼貼在下面以作積累:orm
1 /// <summary> 2 /// 從字符串轉化timezone 3 /// </summary> 4 /// <param name="timezone">如: PST -08:00</param> 5 /// <returns></returns> 6 static bool TryParseTimezone(string timezone,out TimeSpan timeSpan) 7 { 8 if (string.IsNullOrEmpty(timezone)) 9 { 10 Debug.Log("<color=red>timezone is empty</color>"); 11 timeSpan = new TimeSpan(); 12 return false; 13 } 14 15 string[] words = timezone.Split(new char[] { ' ', ':' }, StringSplitOptions.RemoveEmptyEntries); 16 if (words.Length != 3) 17 { 18 Debug.Log("<color=red>timezone is not in right format like [KST +09:00], timezone: " + timezone + "</color>"); 19 timeSpan = new TimeSpan(); 20 return false; 21 } 22 23 int hour; 24 if (!int.TryParse(words[1].TrimStart('+', '-'), out hour)) 25 { 26 Debug.Log("<color=red>timezone is not in right format like [KST +09:00], timezone: " + timezone + "</color>"); 27 timeSpan = new TimeSpan(); 28 return false; 29 } 30 31 int minute; 32 if (!int.TryParse(words[2], out minute)) 33 { 34 Debug.Log("<color=red>timezone is not in right format like [KST +09:00], timezone: " + timezone + "</color>"); 35 timeSpan = new TimeSpan(); 36 return false; 37 } 38 39 bool negative = words[1].StartsWith("-"); 40 hour = negative ? -hour : hour; 41 minute = negative ? -minute : minute; 42 timeSpan = new TimeSpan(hour, minute, 0); 43 return true; 44 }