如何使用以下任何参数获取C#中不同国家的当前时间,1.国家名称2.国家时区
这是为Windows / WPF应用程序 ,而不是像Web可以请任何人回答这个? 提前致谢。
您应该查看TimeZoneInfo
类,特别是在TimeZoneInfo.ConvertTime方法 。
例如,要在中欧获得当前时间:
var remoteTimeZone = TimeZoneInfo.FindSystemTimeZoneById("Central European Standard Time"); var remoteTime = TimeZoneInfo.ConvertTime(DateTime.Now, remoteTimeZone); Console.WriteLine("Time in {0} is {1}", remoteTimeZone.Id, remoteTime.TimeOfDay.ToString());
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; public class Example { public static void Main() { DateTime thisTime = DateTime.Now; Console.WriteLine("Enter the Country"); var Input= Console.ReadLine(); string InputConcatenate = (Input + " Standard Time"); TimeZoneInfo tst = TimeZoneInfo.FindSystemTimeZoneById(InputConcatenate); DateTime tstTime = TimeZoneInfo.ConvertTime(thisTime, TimeZoneInfo.Local, tst); Console.WriteLine("Time in {0} zone: {1}", tst.IsDaylightSavingTime(tstTime) ? tst.DaylightName : tst.StandardName, tstTime); Console.WriteLine(" UTC Time: {0}", TimeZoneInfo.ConvertTimeToUtc(tstTime, tst)); Console.ReadLine(); } }