去评论
推扬网

新哥:c#怎么获得网络标准日期和时间

admin
2020/08/12 16:10:29

澳斯丹的回答:

1、获取网络日期时间 ///?<summary>?? ///?获取网络日期时间?? ///?</summary>?? ///?<returns></returns>?? public?static?string?GetNetDateTime()?? {?? ????WebRequest?request?=?null;?? ????WebResponse?response?=?null;?? ????WebHeaderCollection?headerCollection?=?null;?? ????string?datetime?=?string.Empty;?? ????try?? ????{?? ????????request?=?WebRequest.Create("https://www.baidu.com");?? ????????request.Timeout?=?3000;?? ????????request.Credentials?=?CredentialCache.DefaultCredentials;?? ????????response?=?(WebResponse)request.GetResponse();?? ????????headerCollection?=?response.Headers;?? ????????foreach?(var?h?in?headerCollection.AllKeys)?? ????????{?if?(h?==?"Date")?{?datetime?=?headerCollection[h];?}?}?? ????????return?datetime;?? ????}?? ????catch?(Exception)?{?return?datetime;?}?? ????finally?? ????{?? ????????if?(request?!=?null)?? ????????{?request.Abort();?}?? ????????if?(response?!=?null)?? ????????{?response.Close();?}?? ????????if?(headerCollection?!=?null)?? ????????{?headerCollection.Clear();?}?? ????}?? }2、调用 string?dt?=?GetNetDateTime();?? Console.WriteLine(Convert.ToDateTime(dt).ToString("yyyy-MM-dd?HH:mm:ss"));?? Console.ReadLine();

一见不钟情的回答:

需要采用tcp协议到网络服务器上获取时间 www.time.ac.cn(中科院国家授时中心的时间) 一般使用这个获取一次. 或者 time.nist.gov(美国标准技术院时间) 具体的哪个属性或方法,可能你要看一下msdn查找一下.我这里只有一个思路.因为如果要写一个详细点的,还是要点时间....希望对你有一点帮助. // system.datetime dt = new datetime(); // dt = system.datetime.parse(~~~~~);//得到标准时间 // dt = dt.addhours(8);//得到北京时间