1.窗体:一个label,1个timer;
2:代码
using System.Net;
private void Form1_Load(object sender, EventArgs e) {//窗体载入后 Timer1.Interval = 1000; Timer1.Start(); }
private void Timer1_Tick(object sender, EventArgs e) {//显示时间 string netTime = GetNetDateTime(); if(netTime != "") { LabNow.Text = "北京时间(网络):" + Convert.ToDateTime(netTime).ToString("yyyy年MM月dd dddd HH时mm分ss秒"); } else { LabNow.Text = "北京时间(本地):"+DateTime.Now.ToString("yyyy年MM月dd dddd HH时mm分ss秒"); } }
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 = 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(); } } }