如何获得不基于PC时间的时间?我使用下面的代码来获取时间并且它可以工作,但是当我改变计算机时间时,时间不再正确,那么有没有办法可以获得实际的实时而不是PC时间?可能GPS时间?
private void btn_DateTime_Click(object sender, EventArgs e)
{
DateTime dateTime = DateTime.Now;
label_localTime.Text = dateTime.ToString();
DateTime utcNow = DateTime.UtcNow;
label_utc.Text = utcNow.ToString();
TimeZone timeZone = TimeZone.CurrentTimeZone;
if (timeZone.IsDaylightSavingTime(dateTime) == true)
{
label_dayLightSaving.Text = "YES";
label_timeZone.Text = timeZone.GetUtcOffset(dateTime).ToString();
}
else
{
label_dayLightSaving.Text = "NO";
label_timeZone.Text = "N//A";
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:目标设备在WM6上运行,它有GPS硬件.
谢谢.
听起来你正在寻找网络时间服务器.除非你有本地硬件(GPS接收器,原子时间无线电)来支持其他方法,否则网络时间是你最好的选择.
网络时间协议(NTP)是用于在分组交换,可变延迟数据网络上同步计算机系统的时钟的协议.
这是使用C#的客户端实现 ; 它可能有所帮助.