其实很简单 只是中文的google查不到。。
用TimeZoneInfo 这个方法就可以了~
以下是代码:
1 static void Main(string[] args) 2 { 3 // Get time in local time zone 4 DateTime thisTime = DateTime.Now; 5 Console.WriteLine("Time in {0} zone: {1}", TimeZoneInfo.Local.IsDaylightSavingTime(thisTime) ? 6 TimeZoneInfo.Local.DaylightName : TimeZoneInfo.Local.StandardName, thisTime); 7 Console.WriteLine(" UTC Time: {0}", TimeZoneInfo.ConvertTimeToUtc(thisTime, TimeZoneInfo.Local)); 8 // Get Fiji Standard Time zone 9 TimeZoneInfo tst = TimeZoneInfo.FindSystemTimeZoneById("Fiji Standard Time"); 10 DateTime tstTime = TimeZoneInfo.ConvertTime(thisTime, TimeZoneInfo.Local, tst); 11 Console.WriteLine("Time in {0} zone: {1}", TimeZoneInfo.Local.IsDaylightSavingTime(tstTime) ? 12 tst.DaylightName : tst.StandardName, tstTime); 13 Console.WriteLine(" UTC Time: {0}", TimeZoneInfo.ConvertTimeToUtc(tstTime, tst)); 14 }
第二个是显示 FIJI 这个国家的时间 这个国家是我从更换时区的选项中随便挑选的一个国家名。
也就是说 你
"Fiji Standard Time"
不是乱填的 前面的国家需要在时区选择的国家名里面有显示。